我有2张桌子
-- Purchases --
Id | IdProvider | Date | Observations
和
-- PurchasesDetails --
Id | IdProduct | Quantity | Price
其中Purchases.Id = PurchasesDetails.Id
我想做一个SQL查询,它返回一个价格范围之间的所有购买(价格信息在PurchasesDetails表上-> Quantity * Price)
例如:获取所有价格大于0 $但小于500 $的购买
我已经尝试过:
选择*来自购买项内联接PurchasesDetails on Purchases.Id = PurchasesDetails.Id WHERE Purchases.Id sum(PurchasesDetails.Price * PurchasesDetails.Quantity)在0和500之间
但是它不起作用。好像我缺少用相同ID链接所有PurchasesDetails的条件
我认为这是一个非常简单的任务,但是我被困在那里几个小时,所以欢迎所有帮助!
答案 0 :(得分:2)
这是您想要的吗?
Test-ServiceFabricApplicationPackage C:\MyPackage
请注意,假设SELECT p.*,
SUM(pd.Price * pd.Quantity) as purchase_total
FROM Purchases p INNER JOIN
PurchasesDetails pd
ON p.Id = pd.Id
GROUP BY p.Id
HAVING purchase_total BETWEEN 0 AND 500;
在SELECT p.*
中是唯一的,GROUP BY p.id
与id
很好。