1

想象一下同一个 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 相关的记录也将出现在 Exceptions 中。

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

我不知道这怎么可能。如果您通过 Date 和 TransactionNumber 字段连接两个表,您将只看到 Transaction.Exception = TRUE 的记录。

4

1 回答 1

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
于 2012-08-10T12:33:39.587 回答