Équivalents à l'opérateur INTERSECT de MySQL
L'opérateur SQL INTERSECT est utilisé pour identifier et renvoyer les valeurs correspondantes qui apparaissent dans les deux sections de la requête . Cependant, cet opérateur n'est pas supporté nativement dans MySQL.
Approches alternatives
Pour obtenir la fonctionnalité de l'opérateur INTERSECT dans MySQL, plusieurs méthodes alternatives peuvent être utilisées :
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);
Exemple
Considérez la requête suivante en utilisant INTERSECT opérateur :
(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='恐慌') )
Cette requête récupère les enregistrements de la table 'emovis_reporting' où l'identifiant est 3 et le cut_name est à la fois '全プロセス' et '恐慌'.
MySQL Equivalents
À implémentez cette requête dans MySQL en utilisant la méthode INNER JOIN :
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 = '恐慌';
En utilisant la méthode WHERE ... IN et DISTINCT :
SELECT DISTINCT * FROM emovis_reporting WHERE id = 3 AND cut_name = '全プロセス' AND cut_name IN (SELECT cut_name FROM emovis_reporting WHERE cut_name = '恐慌');
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!