1

私はMySQLが初めてで、学習しようとしています。

2つのテーブルがあります(使用する必要がある列のみを表示します)

Orderdetails (ordernumber, quantityOrdered, priceEach)

Orders (ordernumber)

1 つの注文番号に対して、quantityOrdered と priceEach を乗算したいと考えています。次に、列 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れた と同様に、2 つの列の積を持つという列がordernumber返されます。

于 2013-04-14T19:21:36.623 に答える
0

@Michael Wrightの回答へのコメントに基づいて、これが必要だと思います:

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

これにより、注文番号とすべての quantityOrdered * priceEach の合計が得られます。

特定の注文番号が必要な場合は、次の方法を試してください。

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