Heim > Datenbank > MySQL-Tutorial > Wie repliziere ich die INTERSECT-Operator-Funktionalität von MySQL?

Wie repliziere ich die INTERSECT-Operator-Funktionalität von MySQL?

DDD
Freigeben: 2024-12-25 09:07:32
Original
771 Leute haben es durchsucht

How to Replicate MySQL's INTERSECT Operator Functionality?

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:

  • INNER JOIN Verwenden DISTINCT:
SELECT DISTINCT table_a.column
FROM table_a
INNER JOIN table_b ON table_a.column = table_b.column;
Nach dem Login kopieren
  • WHERE ... IN und DISTINCT:
SELECT DISTINCT table_a.column
FROM table_a
WHERE table_a.column IN (SELECT table_b.column FROM table_b);
Nach dem Login kopieren

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='恐慌') )
Nach dem Login kopieren

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 = '恐慌';
Nach dem Login kopieren

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 = '恐慌');
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage