Maison > base de données > tutoriel mysql > Comment répliquer les fonctionnalités de l'opérateur INTERSECT dans MySQL ?

Comment répliquer les fonctionnalités de l'opérateur INTERSECT dans MySQL ?

Patricia Arquette
Libérer: 2024-12-28 06:24:15
original
569 Les gens l'ont consulté

How to Replicate the INTERSECT Operator's Functionality in MySQL?

Alternatives à l'opérateur Intersect dans MySQL

L'opérateur INTERSECT, trouvé dans Microsoft SQL Server, renvoie des valeurs en double qui apparaissent dans les deux résultats de requête . MySQL ne dispose pas de cet opérateur, ce qui nécessite une approche alternative.

Alternatives MySQL

Pour obtenir les mêmes fonctionnalités qu'INTERSECT dans MySQL, envisagez d'utiliser :

  • INNER JOIN avec DISTINCT : Sélectionne des valeurs distinctes à partir d'une jointure des deux tables.
SELECT DISTINCT value FROM table_a
INNER JOIN table_b
USING (value);
Copier après la connexion
  • OÙ ... DANS avec DISTINCT : Filtre les enregistrements de la première table par valeurs présentes dans la deuxième table.
SELECT DISTINCT value FROM table_a
WHERE (value) IN (SELECT value FROM table_b);
Copier après la connexion

Exemple de requête

Considérez ce qui suit requête :

(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='恐慌') )
Copier après la connexion

Alternative MySQL utilisant INNER JOIN avec DISTINCT :

SELECT DISTINCT * FROM emovis_reporting
INNER JOIN (SELECT * FROM emovis_reporting WHERE ID=3 AND cut_name='全プロセス') AS t1
ON cut_name='恐慌';
Copier après la connexion

Alternative MySQL utilisant WHERE ... IN avec DISTINCT :

SELECT DISTINCT * FROM emovis_reporting
WHERE (id, cut_name) IN (
  SELECT id, cut_name FROM emovis_reporting
  WHERE>
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal