ASP到Access数据库 - SQL连接查询

时间:2012-08-10 12:14:51

标签: sql ms-access asp-classic

想象一下,在同一个Access数据库中有两个表;

Transaction
 - Date
 - Time
 - TransactionNumber
 - UniqueID
 - Exception (boolean)

(TransactionNumber是同一天记录的连续整数,然后每天从0开始。关键字段是UniqueID)

Exceptions
 - ExceptionNumber
 - Date
 - Time
 - TransactionNumber
 - ExceptionReason

(ExceptionNumber是同一天记录的连续整数,然后从0再次开始.TransactionNumber是来自Transactions的相同值,其中两个表中的Date相同)

如果Transaction.Exception为TRUE,则与该交易相关的记录也将显示在“例外”中。

我想从Transaction输出所有记录,并且对于记录,Transaction.Exception恰好为TRUE,那么我想要一个显示Exception.ExceptionReason的列。对于其他记录,它应该是空白的。

我不知道这是怎么回事。如果通过Date和TransactionNumber字段联合这两个表,则只会看到Transaction.Exception = TRUE的记录。

1 个答案:

答案 0 :(得分:1)

听起来像LEFT JOIN可以达到你想要的效果。

SELECT
    t.[Date],
    t.[Time],
    t.TransactionNumber,
    t.[Exception],
    e.ExceptionReason
FROM
    [Transaction] AS t
    LEFT JOIN Exceptions AS e
    ON
        t.[Date] = e.[Date]
        AND t.TransactionNumber = e.TransactionNumber