我有一个订单表,(id,orderCode,productId,quantity,color,size)
其中可以包含以下条目:
1,O20100812,163,2,BLUE,Medium
1,O20100812,163,3,BLUE,Larger
1,O20100812,145,4,RED,Large etc
1,O20100815,134,5,RED,Large etc
1,O20100815,143,2,BLACK,Large etc
1,O20100815,112,8,BLACK,Large etc
Run Code Online (Sandbox Code Playgroud)
和另一个表产品 (id,name,price)
我想要的是使用 orderCode 020100812 找到订单中所有产品的总价。我应该在加入产品表时 DISTINCT 选择订单代码然后求和数量吗?
为什么需要不同?
Select SUM(o.Quantity * Price) TotalPrice
FROM Orders o JOIN Products p ON (o.ProductId = p.Id)
WHERE OrderCode = '020100812'
Run Code Online (Sandbox Code Playgroud)
对于所有订单,您可以使用以下查询:
Select OrderCode, SUM(o.Quantity * Price) TotalPrice
FROM Orders o JOIN Products p ON (o.ProductId = p.Id)
Group by OrderCode
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1788 次 |
| 最近记录: |