如何退回2004年7月我没有销售的记录?
用户将在2004年7月提供日期,然后我需要查看没有销售的产品。
SELECT
DP.ProductID
,DP.Name
,FS.OrderDate
,FS.OrderQty
,FS.OrderAmount
FROM dbo.DimProduct AS DP
LEFT JOIN dbo.FactSales as FS on FS.ProductID = DP.ProductID
答案 0 :(得分:1)
SELECT DP.*
FROM dbo.DimProduct AS DP
LEFT JOIN dbo.FactSales as FS
ON FS.ProductID = DP.ProductID AND
DATENAME(month, FS.OrderDate) = 'July' AND
YEAR(FS.OrderDate) = 2004
WHERE FS.ProductID IS NULL
答案 1 :(得分:0)
也许这可以解决您的问题:
SELECT
DP.ProductID
,DP.Name
,FS.OrderDate
,FS.OrderQty
,FS.OrderAmount
FROM dbo.DimProduct AS DP
LEFT JOIN dbo.FactSales as FS on FS.ProductID = DP.ProductID
WHERE FS.OrderAmount == 0
答案 2 :(得分:0)
SELECT DP.*
FROM dbo.DimProduct AS DP
WHERE NOT EXISTS ( SELECT 1
FROM dbo.FactSales AS FS
WHERE FS.ProductID = DP.ProductID
AND DATENAME(month, FS.OrderDate) = 'July'
AND YEAR(FS.OrderDate) = 2004 )