Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Requêtes Imbriquées | Sous-Requêtes Imbriquées
SQL Intermédiaire

bookRequêtes Imbriquées

L'administration de l'école est satisfaite de nos réalisations récentes et souhaite aller de l'avant.

Alors qu'ils entament leurs vacances d'été, nous avons l'opportunité d'explorer de nouvelles méthodes et d'améliorer nos compétences en SQL.

Notre attention portera sur les requêtes imbriquées, un concept clé en SQL.

Note
Définition

Les requêtes imbriquées, ou sous-requêtes imbriquées, sont des éléments essentiels du SQL dans lesquels une requête se trouve à l'intérieur d'une autre requête. Ces constructions facilitent diverses opérations telles que le filtrage, le calcul et la récupération de données, nécessitant souvent l'intégration de sous-requêtes.

Examinons un exemple issu de notre base de données d'entreprise. À mesure que l'entreprise se développe, nous avons ajouté une nouvelle table department. Cela modifie le fonctionnement de notre base de données.

Observons la structure de la nouvelle table pour comprendre son rôle dans notre base de données :

La nouvelle table contient les départements, leurs types et leurs budgets. Et dans la table employee, comme vous vous en souvenez peut-être, il y a des informations sur le département auquel chaque employé appartient.

Considérons un exemple où l’on utilise des requêtes imbriquées pour extraire les employés travaillant dans des départements dont le budget est inférieur ou égal à 500 000 $ :

1234567
SELECT * FROM employees WHERE department IN ( SELECT name FROM department WHERE budget <= 500000 )
copy

Une clause WHERE est utilisée pour spécifier que le nom du département doit être présent dans la table récupérée par la requête interne.

Décomposons cette requête en deux requêtes distinctes afin de comprendre son fonctionnement. Tout d'abord, récupérons les noms des départements dont le budget est inférieur ou égal à 500 000 $ (notre requête interne) :

123
SELECT name FROM department WHERE budget <= 500000
copy

En tenant compte du résultat obtenu, écrivons maintenant la seconde requête pour récupérer les informations concernant les employés de ces départements :

12345
SELECT * FROM employees WHERE department IN ( 'Marketing', 'Human Resources', 'Finance', 'Customer Service', 'Legal' )
copy

Le résultat de cette requête sera identique à celui de la première requête.

Voici une explication étape par étape :

  1. La requête interne récupère les names des départements nécessaires ;

  2. La clause WHERE vérifie si ces départements sont présents dans la table issue de la requête interne ;

  3. Le résultat souhaité est obtenu.

Voici la syntaxe de base pour une requête interne :

SELECT columns
FROM table_1
WHERE column_name IN (
  SELECT column
  FROM table_2
  other clauses
)

Lors de l'utilisation de requêtes imbriquées, gardez à l'esprit les points importants suivants :

  1. Résultat unique dans la sous-requête : s'assurer que la requête imbriquée retourne une seule colonne. Si elle est utilisée dans une comparaison, elle doit idéalement retourner une seule valeur. Ceci est crucial pour les opérateurs comme =, >, <, >=, <=, <> ;

  2. Types de données : le type de données de la colonne retournée doit correspondre à celui de la colonne à laquelle elle est comparée, afin d'éviter les erreurs ;

  3. Optimisation : les requêtes imbriquées peuvent être lentes, surtout si elles sont exécutées pour chaque ligne de la requête principale ;

  4. Utilisation de l'opérateur IN : les requêtes imbriquées utilisent souvent l'opérateur IN pour vérifier la présence de valeurs dans un sous-ensemble. Il est également possible d'utiliser des opérateurs de comparaison pour des conditions plus complexes.

1. Qu'est-ce qu'une requête imbriquée en SQL ?

2. Quel opérateur SQL est couramment utilisé avec les requêtes imbriquées pour vérifier la présence de valeurs dans un sous-ensemble ?

3. Pourquoi est-il important que le type de données de la colonne renvoyée par une requête imbriquée corresponde à la colonne à laquelle elle est comparée ?

question mark

Qu'est-ce qu'une requête imbriquée en SQL ?

Select the correct answer

question mark

Quel opérateur SQL est couramment utilisé avec les requêtes imbriquées pour vérifier la présence de valeurs dans un sous-ensemble ?

Select the correct answer

question mark

Pourquoi est-il important que le type de données de la colonne renvoyée par une requête imbriquée corresponde à la colonne à laquelle elle est comparée ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 1

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain more about how nested queries work in SQL?

What are some common mistakes to avoid when using nested queries?

Can you show an example using a different operator instead of IN?

bookRequêtes Imbriquées

Glissez pour afficher le menu

L'administration de l'école est satisfaite de nos réalisations récentes et souhaite aller de l'avant.

Alors qu'ils entament leurs vacances d'été, nous avons l'opportunité d'explorer de nouvelles méthodes et d'améliorer nos compétences en SQL.

Notre attention portera sur les requêtes imbriquées, un concept clé en SQL.

Note
Définition

Les requêtes imbriquées, ou sous-requêtes imbriquées, sont des éléments essentiels du SQL dans lesquels une requête se trouve à l'intérieur d'une autre requête. Ces constructions facilitent diverses opérations telles que le filtrage, le calcul et la récupération de données, nécessitant souvent l'intégration de sous-requêtes.

Examinons un exemple issu de notre base de données d'entreprise. À mesure que l'entreprise se développe, nous avons ajouté une nouvelle table department. Cela modifie le fonctionnement de notre base de données.

Observons la structure de la nouvelle table pour comprendre son rôle dans notre base de données :

La nouvelle table contient les départements, leurs types et leurs budgets. Et dans la table employee, comme vous vous en souvenez peut-être, il y a des informations sur le département auquel chaque employé appartient.

Considérons un exemple où l’on utilise des requêtes imbriquées pour extraire les employés travaillant dans des départements dont le budget est inférieur ou égal à 500 000 $ :

1234567
SELECT * FROM employees WHERE department IN ( SELECT name FROM department WHERE budget <= 500000 )
copy

Une clause WHERE est utilisée pour spécifier que le nom du département doit être présent dans la table récupérée par la requête interne.

Décomposons cette requête en deux requêtes distinctes afin de comprendre son fonctionnement. Tout d'abord, récupérons les noms des départements dont le budget est inférieur ou égal à 500 000 $ (notre requête interne) :

123
SELECT name FROM department WHERE budget <= 500000
copy

En tenant compte du résultat obtenu, écrivons maintenant la seconde requête pour récupérer les informations concernant les employés de ces départements :

12345
SELECT * FROM employees WHERE department IN ( 'Marketing', 'Human Resources', 'Finance', 'Customer Service', 'Legal' )
copy

Le résultat de cette requête sera identique à celui de la première requête.

Voici une explication étape par étape :

  1. La requête interne récupère les names des départements nécessaires ;

  2. La clause WHERE vérifie si ces départements sont présents dans la table issue de la requête interne ;

  3. Le résultat souhaité est obtenu.

Voici la syntaxe de base pour une requête interne :

SELECT columns
FROM table_1
WHERE column_name IN (
  SELECT column
  FROM table_2
  other clauses
)

Lors de l'utilisation de requêtes imbriquées, gardez à l'esprit les points importants suivants :

  1. Résultat unique dans la sous-requête : s'assurer que la requête imbriquée retourne une seule colonne. Si elle est utilisée dans une comparaison, elle doit idéalement retourner une seule valeur. Ceci est crucial pour les opérateurs comme =, >, <, >=, <=, <> ;

  2. Types de données : le type de données de la colonne retournée doit correspondre à celui de la colonne à laquelle elle est comparée, afin d'éviter les erreurs ;

  3. Optimisation : les requêtes imbriquées peuvent être lentes, surtout si elles sont exécutées pour chaque ligne de la requête principale ;

  4. Utilisation de l'opérateur IN : les requêtes imbriquées utilisent souvent l'opérateur IN pour vérifier la présence de valeurs dans un sous-ensemble. Il est également possible d'utiliser des opérateurs de comparaison pour des conditions plus complexes.

1. Qu'est-ce qu'une requête imbriquée en SQL ?

2. Quel opérateur SQL est couramment utilisé avec les requêtes imbriquées pour vérifier la présence de valeurs dans un sous-ensemble ?

3. Pourquoi est-il important que le type de données de la colonne renvoyée par une requête imbriquée corresponde à la colonne à laquelle elle est comparée ?

question mark

Qu'est-ce qu'une requête imbriquée en SQL ?

Select the correct answer

question mark

Quel opérateur SQL est couramment utilisé avec les requêtes imbriquées pour vérifier la présence de valeurs dans un sous-ensemble ?

Select the correct answer

question mark

Pourquoi est-il important que le type de données de la colonne renvoyée par une requête imbriquée corresponde à la colonne à laquelle elle est comparée ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 1
some-alt