私はすべての注文ラインとその注文ラインの製品数を記載した以下のSQLを持っています。単一の行がkitsQtyShipped数の総計と各キットに与えられているように私が必要なもの商品ごとに注文番号を付与するための注文数量を追加
+-----------+--------------------------+---------------+
| KitNumber | Kitname | KitQtyShipped |
+-----------+--------------------------+---------------+
| 269588 | product2 | 30 |
| 269291 | product1 | 3 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 3 |
| 269291 | product1 | 3 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269291 | product1 | 4 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269291 | product1 | 4 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269291 | product1 | 2 |
| 269291 | product1 | 1 |
| 269290 | product3 | 2 |
| 269290 | product3 | 3 |
| 269290 | product3 | 2 |
| 269290 | product3 | 10 |
| 269290 | product3 | 3 |
| 269290 | product3 | 26 |
| 269290 | product3 | 1 |
| 269290 | product3 | 11 |
| 269290 | product3 | 5 |
ような出力を与える
SELECT p.externalReference as KitNumber,
p.description as Kitname,
(SELECT quantity
FROM order_line
WHERE id = ol.id) as KitQtyShipped
FROM order_line ol
JOIN shipment s ON ol.shipmentId = s.id
JOIN product p ON ol.productId = p.id
JOIN order_item oi ON s.orderItemId = oi.id
WHERE s.state = 'despatched'
AND ol.quantity != 0
ORDER BY KitNumber DESC;
はKitNumberによってグループに、このあります。つまり、すべての行以上が、私が試してみました
各キットのために一緒に加え:
SELECT p.externalReference as KitNumber,
p.description as Kitname,
COUNT(*) * (SELECT quantity
FROM order_line
WHERE id = ol.id) as KitQtyShipped
FROM order_line ol
JOIN shipment s ON ol.shipmentId = s.id
JOIN product p ON ol.productId = p.id
JOIN order_item oi ON s.orderItemId = oi.id
WHERE s.state = 'despatched'
AND ol.quantity != 0
GROUP BY ol.productId
ORDER BY KitNumber DESC;
が、それは正しい値
にそれが何かのように取得するために探して出力イムを与えるものではありません。
+-----------+--------------------------+--------------------------+
| KitNumber | Kitname | KitQtyShipped |
+-----------+--------------------------+--------------------------+
| 269588 | product2 |(Sum of all orderlines) 30|
| 269291 | product1 | 45 |
| 269290 | product3 | 63 |
適切な値がわからない場合は、お手伝いができません。私たちにdbスキーマ、サンプルデータ、現在および予想される出力を表示します。 \t [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [**スタート**] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を改善し、より良い回答を得る方法を学ぶことができます。 \t [**最小限の完全で検証可能なサンプルを作成する方法**](http://stackoverflow.com/help/mcve) –
投稿したサンプルデータに基づいてPlsの出力が望ましい投稿 – etsa
@etsaが追加されました希望 –