1
我有一個SQL查詢可以從多個不同的表中查找客戶及其付款條件。SQL - 僅查找具有不同付款條件的行
查詢如下。
SELECT
c.CustomerCode, c.CustomerName, cst.PaymentTermCode
FROM
CustomerShipTo cst
JOIN
Customer c ON cst.CustomerCode = c.CustomerCode
WHERE
cst.IsActive = 1 AND c.IsProspect = 0 AND c.IsActive = 1
我想查找具有多個送貨地址,但並不都具有相同付款條件的客戶。在此示例數據中,最後2行,同一個客戶(CUST-006002
)有2個不同的送貨地址和2個不同的支付代碼,所以我只想選擇這些行。
我嘗試添加HAVING COUNT(CustomerCode) > 1
子句到最後,但沒有給出所需的輸出,因爲有時可能有多個送貨地址的客戶(在Customer E
的情況下)但具有相同的付款期限。
╔═══════════════╦═════════════════════════════╦═══════════════════╗
║ Customer Code ║ Shipping Address ║ Payment Term Code ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-016714 ║ Company A - Sample Address ║ NET30EOM ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-017457 ║ Company B - Sample Address ║ NET30EOM ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-016464 ║ Company C - Sample Address ║ COD ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-017215 ║ Company D - Sample Address ║ COD ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-006001 ║ Company E - Sample Address1 ║ NET30EOM ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-006001 ║ Company E - Sample Address2 ║ NET30EOM ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-006002 ║ Company F - Sample Address1 ║ COD ║
╠═══════════════╬═════════════════════════════╬═══════════════════╣
║ CUST-006002 ║ Company F - Sample Address2 ║ NET30EOM ║
╚═══════════════╩═════════════════════════════╩═══════════════════╝