Maison > base de données > tutoriel mysql > Comment effectuer une sous-requête dans la base de données MySQL

Comment effectuer une sous-requête dans la base de données MySQL

黄舟
Libérer: 2017-08-03 10:20:27
original
2474 Les gens l'ont consulté

Une sous-requête est une instruction de requête imbriquée dans une autre instruction de requête. Les résultats de la requête de l'instruction de requête interne peuvent être utilisés comme instruction de requête externe pour fournir des conditions de requête. La sous-requête peut inclure des mots-clés tels que IN, NOT IN, ANY, ALL, EXISTS et NOT EXISTS, ainsi que des opérateurs de comparaison tels que "=", "!=", etc. Comment effectuer une sous-requête ? comme suit :

Comment effectuer une sous-requête dans la base de données MySQL

1. Tout d'abord, le résultat de la requête dans une requête est utilisé comme condition de la requête externe et le mot-clé IN peut être utilisé. le code est le suivant :

SELECT * FROM city WHERE CountryCode IN (SELECT Code FROM country);
Copier après la connexion

Comme indiqué ci-dessous :

Comment effectuer une sous-requête dans la base de données MySQL

2. la requête externe n'est pas le résultat de la requête interne, vous pouvez utiliser le mot-clé NOT IN, le code est le suivant :

SELECT * FROM city WHERE CountryCode NOT IN (SELECT Code FROM country);
Copier après la connexion

comme indiqué ci-dessous :

Comment effectuer une sous-requête dans la base de données MySQL

3. Lors de l'utilisation de la requête par mot-clé EXISTS, l'instruction de requête interne ne renvoie pas l'enregistrement de la requête, mais renvoie une valeur booléenne lorsque la valeur renvoyée par la requête interne est vraie, l'instruction de requête externe le fera. effectuer la requête. Si false est renvoyé, la requête ne sera pas exécutée ou le résultat de la requête sera vide, le code est le suivant :

SELECT * FROM city WHERE EXISTS (SELECT Name FROM country);
Copier après la connexion

comme indiqué ci-dessous :

Comment effectuer une sous-requête dans la base de données MySQL

4. À partir de la troisième étape, on peut voir qu'avec EXISTS L'opposé est NOT EXISTS Lorsque la valeur renvoyée par la requête interne est fausse, l'instruction de requête externe interrogera. . Si true est renvoyé, la requête ne sera pas effectuée ou le résultat de la requête sera vide. Le code est le suivant :

SELECT * FROM city WHERE NOT EXISTS (SELECT Name FROM country);
Copier après la connexion

Comme le montre la figure ci-dessous :

<🎜. >

Comment effectuer une sous-requête dans la base de données MySQL

5. Si l'une des conditions est remplie, l'instruction de requête externe peut être exécutée via cette condition. Utiliser le mot-clé ANY, le code est le suivant : .

SELECT * FROM city WHERE Population >= ANY (SELECT Population FROM country);
Copier après la connexion
comme indiqué ci-dessous :


Comment effectuer une sous-requête dans la base de données MySQL

6. La sous-requête contient également des opérateurs de comparaison, notamment ">=", "<= ", "!=" et d'autres mots-clés, le code est le suivant :

SELECT * FROM city WHERE Population >=  (SELECT Population FROM country WHERE Name = &#39;Afghanistan&#39;);
SELECT * FROM city WHERE Population <=  (SELECT Population FROM country WHERE Name = &#39;Afghanistan&#39;);
SELECT * FROM city WHERE Population !=  (SELECT Population FROM country WHERE Name = &#39;Afghanistan&#39;);
Copier après la connexion
Comme le montre la figure ci-dessous :

Comment effectuer une sous-requête dans la base de données MySQL

Comment effectuer une sous-requête dans la base de données MySQL

Comment effectuer une sous-requête dans la base de données MySQL

7. Si toutes les conditions sont remplies, tous les résultats ne seront renvoyés que si l'instruction de requête interne est remplie. Le code est le suivant :

SELECT * FROM city WHERE Population >= ALL (SELECT Population FROM country WHERE Name = &#39;Afghanistan&#39;);
Copier après la connexion
Comme indiqué ci-dessous :


Comment effectuer une sous-requête dans la base de données MySQL

Remarques

Faites attention à l'utilisation des sous-requêtes

Faites attention à la différence entre chaque mot-clé dans la sous-requête

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal