Partager via


Comment : créer des sous-requêtes

Vous pouvez utiliser les résultats d'une requête en tant que point de départ d'une autre requête. Vous pouvez utiliser les résultats d'une sous-requête en tant qu'instruction faisant appel à la fonction IN( ), à l'opérateur EXISTS ou à la clause FROM.

Vous pouvez créer une sous-requête en l'introduisant directement dans le volet SQL ou copier une requête et la coller dans un autre.

Notes

Les boîtes de dialogue et les commandes de menu qui s'affichent peuvent être différentes de celles qui sont décrites dans l'aide, en fonction de vos paramètres actifs ou de l'édition utilisée. Pour modifier vos paramètres, choisissez Importation et exportation de paramètres dans le menu Outils. Pour plus d'informations, consultez Utilisation des paramètres.

Pour définir une sous‑requête dans le volet SQL

  1. Créez la requête de base.

  2. Dans le volet SQL, sélectionnez l'instruction SQL, puis utilisez la commande Copier pour déplacer la requête dans le Presse-papiers.

  3. Créez la nouvelle requête, puis utilisez la commande Coller pour coller la première requête dans la clause WHERE ou FROM de cette nouvelle requête.

    Imaginez, par exemple, que vous êtes en présence de deux tables (products et suppliers) et que vous souhaitez créer une requête indiquant tous les produits de fournisseurs suédois. Créez la première requête relative à la table suppliers pour rechercher tous les fournisseurs suédois :

    SELECT supplier_id
    FROM supplier
    WHERE (country = 'Sweden')
    

    Utilisez la commande Copier pour copier cette requête dans le Presse-papiers. Créez la deuxième requête relative à la table products répertoriant toutes les informations nécessaires sur les produits :

    SELECT product_id, supplier_id, product_name
    FROM products
    

    Dans le volet SQL, ajoutez une clause WHERE à la deuxième requête, puis collez la première requête à partir du Presse-papiers. Ajoutez des parenthèses autour de la première requête afin d'obtenir le résultat final suivant :

    SELECT product_id, supplier_id, product_name
    FROM products
    WHERE supplier_id IN
       (SELECT supplier_id
      FROM supplier
      WHERE (country = 'Sweden'))
    

Voir aussi

Concepts

Types de requêtes pris en charge (Visual Database Tools)

Expressions dans des requêtes

Autres ressources

Spécification de critères de recherche