、私が使用しているクエリは次のとおりです。MySQLのテーブルUNIONのISSUE
SELECT qa_invoicesitems.item_code, qa_invoicesitems.item_unitprice, qa_invoicesitems.item_subtotal, qa_invoicesitems.item_discount,
qa_invoicesitems.item_total
FROM qa_invoicesitems
RIGHT JOIN qa_invoicesitems_returnlog USING (item_code)
WHERE invoice_code = 17
UNION
SELECT qa_invoicesitems_returnlog.item_code, qa_invoicesitems_returnlog.item_unitprice, qa_invoicesitems_returnlog.item_subtotal,
qa_invoicesitems_returnlog.item_discount, qa_invoicesitems_returnlog.item_total
FROM qa_invoicesitems_returnlog
LEFT JOIN qa_invoicesitems USING (item_code)
WHERE returnlog_code = 9
しかし、私は望ましい結果を見張ることができません。
グラフィカル例..
誰もが、私はこの結果を得ることができる方法任意のアイデアを持っていますか?
注: qa_invoicesitems_returnlogデータを置き換えます。
コード:1234,1585,23は両方のテーブルに存在するため、(qa_invoicesitems_returnlog)から取得され、残りは単純に表示されます。
私は質問を理解するかどうかを見てみましょう。あなたは2つのテーブルを照会したいのですが、どこに行が存在するのかは、2つ目のテーブルの行だけを返しますか? – JohnFx
正確には、(item_code)が両方のテーブルで見つかった場合は、2番目のテーブルの行に置き換えてください。 –
元の質問を編集して、必要なものを明確にすることはできますか? –