1

次の VIEW をセットアップして、WHERE 句の 2 つのテーブルの列間で指定された一致につながる 3 つのケースを定義しようとしました。

ビューには私のステートメントのために除外されるべきエントリがあるため、これは多かれ少なかれ機能します。そのため、select * 出力のスクリーンショットを参照してください。

ここで私を助けてもらえますか?事前に感謝します。

CREATE OR REPLACE VIEW `match` AS SELECT 
a.`werksnr`,
b.`werksnr` AS `werksnr_ref`, 
a.`EAN`,
b.`EAN` AS `EAN_ref`, 
a.`lieferant`,
b.`lieferant` AS `lieferant_ref`, 
a.`artikel`, 
b.`artikel` AS `artikel_ref`,  
a.`artikelbezeichnung` AS `bezeichnung_suspect`,
b.`artikelbezeichnung1`, 
b.`artikelbezeichnung2`

FROM suspect as a, reference as b WHERE 

(a.EAN IS NOT NULL AND b.EAN IS NOT NULL AND a.werksnr IS NOT NULL and b.werksnr IS NOT NULL AND a.EAN = b.EAN AND a.werksnr = b.werksnr) OR
(a.lieferant IS NOT NULL AND b.lieferant IS NOT NULL AND a.werksnr IS NOT NULL AND b.werksnr IS NOT NULL AND a.lieferant = b.lieferant AND a.werksnr = b.werksnr) OR
(a.lieferant IS NOT NULL AND b.lieferant IS NOT NULL AND a.EAN IS NOT NULL AND b.EAN IS NOT NULL AND a.lieferant = b.lieferant AND a.EAN = b.EAN);

スクリーンショット

4

0 に答える 0