Entspricht dem INTERSECT-Operator von MySQL
Der SQL-INTERSECT-Operator wird verwendet, um die übereinstimmenden Werte zu identifizieren und zurückzugeben, die in beiden Abschnitten der Abfrage auftreten . Allerdings wird dieser Operator in MySQL nicht nativ unterstützt.
Alternative Ansätze
Um die Funktionalität des INTERSECT-Operators in MySQL zu erreichen, können mehrere alternative Methoden eingesetzt werden:
SELECT DISTINCT table_a.column FROM table_a INNER JOIN table_b ON table_a.column = table_b.column;
SELECT DISTINCT table_a.column FROM table_a WHERE table_a.column IN (SELECT table_b.column FROM table_b);
Beispiel
Betrachten Sie die folgende Abfrage mit INTERSECT Operator:
(select * from emovis_reporting where (id=3 and cut_name= '全プロセス' and cut_name='恐慌') ) intersect ( select * from emovis_reporting where (id=3) and ( cut_name='全プロセス' or cut_name='恐慌') )
Diese Abfrage ruft Datensätze aus der Tabelle „emovis_reporting“ ab, wobei die ID 3 ist und der Schnittname sowohl „全プロセス“ als auch „恐慌“ ist.
MySQL Äquivalente
Zur Implementierung dieser Abfrage in MySQL mit der INNER JOIN-Methode:
SELECT DISTINCT * FROM emovis_reporting AS a INNER JOIN emovis_reporting AS b ON a.id = b.id WHERE a.id = 3 AND a.cut_name = '全プロセス' AND b.cut_name = '恐慌';
Verwendung der WHERE ... IN- und DISTINCT-Methode:
SELECT DISTINCT * FROM emovis_reporting WHERE id = 3 AND cut_name = '全プロセス' AND cut_name IN (SELECT cut_name FROM emovis_reporting WHERE cut_name = '恐慌');
Das obige ist der detaillierte Inhalt vonWie repliziere ich die INTERSECT-Operator-Funktionalität von MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!