如何查找记录是否匹配

How to find if records match or not

这可能很简单,我就是想不通。

我想显示一个客户列表,这些客户在他们的账单城市和他们的客户城市中列出了不同的城市。账单地址在 table 标题发票中,客户地址在 table 标题客户中。

有没有可以显示不一样的函数?

这可能很简单,我只是无法理解它。

我想显示一个客户列表,这些客户在他们的账单城市和他们的客户城市中列出了不同的城市。账单地址在 table 标题发票中,客户地址在 table 标题客户中。

有没有可以显示不一样的函数?

我可以使用连接轻松地将两个 table 显示在一起,但现在我想区分它们

    select
    c.LastName,
    c.City,
    i.billingCity
    from Customers c
    inner join invoices i on c.customerId = i.customerId

一个简单的选项,使用 EXISTS 子句:

SELECT
    c.LastName,
    c.City
FROM Customers c
WHERE EXISTS (SELECT 1 FROM invoices i
              WHERE i.customerId = c.customerId AND
                    i.billingCity <> c.City);

如果您还想显示其他不匹配的发票城市,那么您需要坚持使用连接方法:

SELECT
    c.LastName,
    c.City,
    i.billingCity
FROM Customers c
INNER JOIN invoices i
    ON i.customerId = c.customerId AND
       i.billingCity <> c.City;

您的主要原始问题是省略了连接条件。