私はこれらの2つのテーブルで結合機能を実行するのに苦労しています。私はサンプルデータセットを単純化しましたが、最初のテーブルに追加のwhere節が含まれていますが、問題はないようです。値に基づくテーブルの結合
私は下の2つのテーブルを結合するためのクエリを記述します。
select a.prod_code, a.prod_name, b.ref_value from Product_code a
left join Product_reference b on a.prod_code = b.pref_code
where a.prod_code <> 'CURTAIN' and b.ref_value = 'MAN'
私が直面してる問題は、私は一種の条件付きのテーブルに参加したいということです。私。 ref_typeの値がProduct_referenceテーブルで 'MAN'であれば、私はそれに参加したいです。
この例では、 "Product_name"にref_type 'MAN'がないため、結果に「Chair」は含まれません。私が必要としているのは依然としてProduct_referenceテーブルの結合された値なしで(つまり、ref_type 'MAN'という値は存在しないので)、結果を完全に残さないように、クエリ結果に表示します。
一方PRODUCT_NAMEテーブルレコード「カーテン」(Product_referenceのref_type「MAN」が存在するかどうかにかかわらず場合)中断されるべきである
推奨事項?
Product_code
prod_code prod_name
A Table
B Chair
C Window
D Door
E Curtain
Product_reference
pref_code ref_type ref_value
A MAN x
A AUTO y
B AUTO z
C AUTO z1
C MAN x1
D AUTO zxc
E AUTO abc
E MAN cba
このヘルプ?,選択a.prod_code、a.prod_name、PRODUCT_CODE からb.ref_valueがProduct_reference bを参加左行いon a.prod_code = b.pref_code ここで、a.prod_name <> 'CURTAIN'およびb.ref_type = 'MAN' – dkb