MS Access 2003 - объединить последнюю запись нескольких таблиц в один запрос или таблицу? - PullRequest
0 голосов
/ 28 февраля 2010

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

так что я знаю, как заполнить это в форме, используя инструкцию 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

спасибо!

1 Ответ

3 голосов
/ 28 февраля 2010

Что вы определяете последнюю запись? Допустим, это дата создания и что дата создания уникальна, тогда вы можете использовать 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)
...