我試圖獲取產品數量(SUM
)等於零的所有供應商。這是我迄今爲止所做的,但它不會返回任何行,也不會產生任何錯誤。我確保有數量爲零的產品,並且腳本在正確的數據庫上運行。HAVING與WHERE之間的混淆,SQL Server
select
VI.Name, Cp.ProductName
from
VendorInfo VI
inner join
VendorTrading VT on VI.Id = VT.VendorId
inner join
CustomerProducts CP on VT.Id = CP.VendorTradingId
group by
VI.Name, CP.ProductName
having
sum(CP.ProductQuantity) = 0
我對HAVING
和WHERE
感到困惑。我該怎麼辦?
UPDATE:
這是VendorInfo
表:
這是VendorTrading
表:
這是CustomerProduct
表:
現在預期的結果的結果應該是這樣的:
會有同樣的產品,但具有不同Tradedate多行,所以應該首先SUM所有產品的數量,如果它等於零,則它返回VendorName和產品名稱,它在某個時間段內有0個產品數量。後來我還需要它的產品數量爲0 希望它會清除所有
你應該提供樣本數據和期望的結果(也許是一個SQL小提琴)。您的描述聽起來好像沒有供應商/產品組合符合條件;這似乎完全合理。 –
您的**標題**和**解釋**不相關 –
@MotoGP您能推薦一個標題嗎? –