SQL 服务器:TOP 和 Distinct
SQL Server : TOP along with Distinct
我有两个 table Products
和 PurchaseDetails
。
Products
table 的架构是
ProductId (primary key)
ProductName
CategoryId
Price
QuantityAvailable
PurchaseDetails
table 的架构是
PurchaseId
EmailId
ProductId
QuantityPurchased
DateOfPurchase
题目要求我找出购买量最大的TOP 3产品。
我写了这个 SQL 查询:
Select TOP 3
Distinct(ProductName), Price, QuantityPurchased
from
Product, PurchaseDetails
where
Product.ProductId = PurchaseDetails.ProductId
order by
QuantityPurchased DESC
但是上面的查询抛出了一个错误。我不明白为什么上述查询会产生错误?
以下查询将为您提供购买量最大的前 3 个产品
Select TOP 3 ProductName,sum(Price) as [price],sum(QuantityPurchased) as QuantityPurchased
from Product , PurchaseDetails
where Product.ProductId=PurchaseDetails.ProductId
group by ProductName
order by QuantityPurchased DESC
Select TOP 3 ProductName,sum(Price) as [price],sum(QuantityPurchased) as QuantityPurchased
from Product , PurchaseDetails
where Product.ProductId=PurchaseDetails.ProductId
group by ProductName
order by QuantityPurchased DESC
我有两个 table Products
和 PurchaseDetails
。
Products
table 的架构是
ProductId (primary key)
ProductName
CategoryId
Price
QuantityAvailable
PurchaseDetails
table 的架构是
PurchaseId
EmailId
ProductId
QuantityPurchased
DateOfPurchase
题目要求我找出购买量最大的TOP 3产品。
我写了这个 SQL 查询:
Select TOP 3
Distinct(ProductName), Price, QuantityPurchased
from
Product, PurchaseDetails
where
Product.ProductId = PurchaseDetails.ProductId
order by
QuantityPurchased DESC
但是上面的查询抛出了一个错误。我不明白为什么上述查询会产生错误?
以下查询将为您提供购买量最大的前 3 个产品
Select TOP 3 ProductName,sum(Price) as [price],sum(QuantityPurchased) as QuantityPurchased
from Product , PurchaseDetails
where Product.ProductId=PurchaseDetails.ProductId
group by ProductName
order by QuantityPurchased DESC
Select TOP 3 ProductName,sum(Price) as [price],sum(QuantityPurchased) as QuantityPurchased
from Product , PurchaseDetails
where Product.ProductId=PurchaseDetails.ProductId
group by ProductName
order by QuantityPurchased DESC