注文をエクスポートしたことがない顧客のリストを取得する必要があります
CustomerNumbers のリストを渡し、それらを Orders に参加させてからグループ化しています。近いように感じますが、Orders.Exported が 1 に設定されていない Customers だけを取得する方法がわかりません。
これが私がこれまでに持っているものです:
SELECT Customers.CustomerID,
Orders.Exported,
Count(Orders.OrderID) AS OrderCount
FROM Customers WITH (Nolock)
JOIN Orders ON Customers.ManufacturerID = Orders.ManufacturerID
AND Customers.CustomerNumber = Orders.CustomerNumber
WHERE Customers.CustomerNumber IN (
SELECT *
FROM dbo.Split(REPLACE(@CustomerNumbers,'\',''),','))
AND Customers.ManufacturerID=@ManufacturerID
AND Customers.Source = 'ipad'
GROUP BY Customers.CustomerID,
Orders.Exported
これにより、必要なものがほとんど得られます。これに対する私の結果は次のとおりです。
CustomerID Exported OrderCount
375408 NULL 1
375408 1 5
375412 1 2
376892 NULL 1
したがって、このリストのうち、注文をエクスポートしたことがないため、376892 のみが必要です。