私はこのクエリを持っています:
SELECT (
SELECT purchase_code
FROM qa_suppliers_invoices a
WHERE a.supplier_invoice_code = b.item_invoicecodesupplier
) AS purchase_code,
item_code,
status_code,
itempurchase_quantity,
item_costprice
FROM qa_items_purchases b
ORDER BY purchase_code LIMIT 0,20000;
次のデータを返します
(item_code)行を使用して紫色の線のようにグループ化し、(status_code)行を参照するすべての(itempurchase_quantity)を追加してから、この式(status_15 --status_16)を画像のように適用します。
この結果が欲しい、GROUP():
purchase_code item_code status_code itempurchase_quantity item_costprice
1 1506 15 713 126.94
2 1503 16 12 0.00
2 1683 15 9 25.28
2 1931 15 60 0.00
item_code(1997)が存在しない場合status_code = 15したがって、負の数(-9)が返されるため、表示する必要はありません。
2 2325 16 50 849.97
注: 16個のstatus_codeをすべて非表示にする必要があります
Demo data to play with query at sqlfiddle
更新:
これは私が必要とするものを詳述する写真です: