MS Access 2003 - Объединить последнюю запись из нескольких таблиц в один запрос или таблицу?

StackOverflow https://stackoverflow.com/questions/2350084

Вопрос

У меня есть пара таблиц, которые являются таблицами транзакций, и я хотел бы создать простую сводную диаграмму для сравнительных балансов .... которые являются последней записью каждой из этих таблиц в поле под названием "баланс".

итак, я знаю, как заполнить это в форме, используя инструкцию SQL, rs.movelast , но я не знаю, как перейти к сводной диаграмме, не поместив это в таблицу....

Спасибо!

Редактировать:

Это то, что я использовал!Спасибо, Рему!

(SELECT TOP 1 TransactionID, Balance  
FROM tblTrans001
ORDER BY TransctionID  DESC) 
UNION  
(SELECT TOP 1 TransactionID,  Balance  
FROM tblTransaction02 
ORDER BY TransactionID DESC) 
UNION
(SELECT TOP 1 TransactionID, Balance
FROM Tranaction03
ORDER BY TransID DESC) 

Теперь мне просто нужно найти способ вставить текстовую строку в соответствующие поля, которая определяет, из какой таблицы берется значение.

например, приведенный выше запрос возвращает

TransID     Balance
123         $1000.00
234         $20000.00
345         $300000.00

и мне нужно:

TransID     Balance        Table/Account
123         $1000.00       tblTransaction01
234         $20000.00      tblTransaction02
345         $300000.00     tblTransaction03

Спасибо!

Это было полезно?

Решение

Как вы определяете последнюю запись?Допустим, это дата создания и что созданная дата уникальна, тогда вы могли бы использовать приведенный ниже SQL.Обратите внимание, что скобки очень важны.

(SELECT TOP 1 CrDate , Balance , "TranA" As FromTable
FROM  TransactionsA
ORDER BY  CrDate DESC)
UNION 
(SELECT TOP 1 CrDate , Balance , "TranB" As FromTable
FROM  TransactionsB 
ORDER BY  CrDate DESC)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top