1

我是 MySQL 新手,正在努力学习。

我有两个表(我只显示我们应该使用的列)

Orderdetails (ordernumber, quantityOrdered, priceEach)

Orders (ordernumber)

我想将一个订单号的数量和价格相乘。然后我得到一行显示列 orderNumber 和 Total。

这是我尝试过的,但我无法弄清楚。我应该加入吗?

SELECT orderNumber, SUM((quantityOrdered * priceEach)) AS Total 
      GROUP BY orderNumber       <<=Here it says syntax error?
      FROM orderdetails

加入我的订单和订单详情表怎么样?

4

2 回答 2

1

您应该能够使用:

SELECT `ordernumber`, (`quantityOrdered` * `priceEach`) AS `total` FROM `orderdetails`;

这将返回一个名为的total列,该列具有两列的乘积以及ordernumber返回的值。

于 2013-04-14T19:21:36.623 回答
0

根据您对@Michael Wright 的回答的评论,我认为您想要这个:

SELECT `ordernumber`, SUM((`quantityOrdered` * `priceEach`)) AS `total` 
    FROM `orderdetails`
    GROUP BY `ordernumber`;

那应该给你订单号和所有数量的总和 * priceEach。

如果您想要一个特定的订单号,您可以尝试:

SELECT `ordernumber`, SUM((`quantityOrdered` * `priceEach`)) AS `total` 
    FROM `orderdetails`
    WHERE `ordernumber` = 'X'
    GROUP BY `ordernumber`;
于 2013-04-14T19:30:06.283 回答