Alternatif kepada Pengendali Intersect dalam MySQL
Pengendali INTERSECT, ditemui dalam Microsoft SQL Server, mengembalikan nilai pendua yang muncul dalam kedua-dua hasil pertanyaan . MySQL kekurangan operator ini, memerlukan pendekatan alternatif.
Alternatif MySQL
Untuk mencapai fungsi yang sama seperti INTERSECT dalam MySQL, pertimbangkan untuk menggunakan:
SELECT DISTINCT value FROM table_a INNER JOIN table_b USING (value);
SELECT DISTINCT value FROM table_a WHERE (value) IN (SELECT value FROM table_b);
Contoh Pertanyaan
Pertimbangkan pertanyaan berikut:
(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='恐慌') )
Alternatif MySQL Menggunakan INNER JOIN dengan DISTINCT:
SELECT DISTINCT * FROM emovis_reporting INNER JOIN (SELECT * FROM emovis_reporting WHERE ID=3 AND cut_name='全プロセス') AS t1 ON cut_name='恐慌';
Alternatif MySQL Menggunakan WHERE ... IN dengan DISTINCT:
SELECT DISTINCT * FROM emovis_reporting WHERE (id, cut_name) IN ( SELECT id, cut_name FROM emovis_reporting WHERE>
Atas ialah kandungan terperinci Bagaimana untuk Meniru Fungsi Operator INTERSECT dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!