Comment utiliser select dans une instruction de mise à jour

<

Contenu

  • Conseils avertissements
  • article data-type="article">

    Les concepteurs de Structured Query Language (SQL) ont créé un outil puissant pour gérer les données avec seulement quelques commandes simples. L`une des constructions les plus puissants se produit lorsque les commandes sont imbriquées. A Select, Update ou commande Supprimer utilise un ou plusieurs autres Sélectionnez les commandes pour limiter son fonctionnement. A titre d`exemple, une mise à jour sur la table de la clientèle se produit uniquement lorsque le total des ventes cumulées de plusieurs records de vente au total plus de 250 $. Suivez ces étapes pour créer plusieurs commandes de mise à jour imbriquées.

    Choses que vous devez

    • base de données SQL telles que Oracle, Sybase, Microsoft SQL Server ou MySQL
    • Connaissance de base des commandes SQL et éditeur de requêtes
    • Ouvrez l`éditeur de requête SQL et créer une nouvelle base de données appelée SampleDB. Choisissez cette base de données pour la session de requête.

      Créer la base de données SampleDB;

      Utilisez SampleDB;

      Ces exemples ont été créés en utilisant l`éditeur de requêtes au sein de la gestion de Microsoft SQL Server 2008 Studio Express.

    • Créer deux tables, les clients et les ventes, puis ajouter quelques enregistrements à deux tables en utilisant le script suivant.

      Créer Tableau clients

      (Clé primaire int CustomerID,

      Nom varchar (50),

      Statut varchar (10));

      Insérer dans Clients Valeurs (1, `John Smith`, `Nouveau`);

      insérer dans les valeurs des clients (2, `Mary Jones`, `Nouveau`);

      Insérer dans Clients Valeurs (3, `Fred Adams`, `Nouveau`);




      Créer table Sales

      (SalesID int clé primaire,

      CustomerID int Références Clients,

      Montant int);

      insérer dans les valeurs de vente (1, 1, 500);

      insérer dans les valeurs de vente (2, 1, 250);

      insérer dans les valeurs de vente (3, 3, 50);

    • Créer une requête imbriquée, combinant une mise à jour avec une instruction Select qui définit le statut de client à Active pour les clients qui ont une activité dans le tableau des ventes.

      mise à jour Les clients

      Définir l`état = `Active`

      où CustomerID En

      (Sélectionnez CustomerID De Sales);

      Ceci est une déclaration de mise à jour de SQL standard qui définit le champ d`état à Active pour un ensemble sélectionné d`enregistrements dans la table des clients. Dans une requête imbriquée, la clause WHERE comprend une ou plusieurs instructions Select entourés par des parenthèses (). Chaque instruction Select renvoie une liste de valeurs qui peuvent être comparés à un champ de la table. Dans ce cas, seuls les dossiers des clients qui ont des numéros clients trouvés dans le tableau des ventes seront mis à jour.

    • Créez une seconde requête imbriquée en utilisant une instruction Select qui agrège le total des ventes.

      mise à jour Les clients

      Set Status = «Premium»

      où CustomerID En

      (Sélectionnez CustomerID De Sales

      groupe par CustomerID

      Ayant somme (Montant)> 250);

      Lors de l`analyse des requêtes imbriquées, commencez par les instructions Select trouvés dans la clause Where. Dans ce cas, la table Sales est agrégée par ID client (Groupe par CustomerID) au total des montants de vente (Somme (Montant)). Seuls ceux avec des ventes totales de plus de 250 $ sont choisis. Cette liste est ensuite utilisée pour filtrer les dossiers des clients sont mis à jour (client 1).

    • Créer une autre requête imbriquée qui sélectionne les enregistrements des clients qui ne figurent pas dans le tableau des ventes.

      mise à jour Les clients

      Définir l`état = `Inactif`

      où CustomerID Not In

      (Sélectionnez CustomerID De Sales);

      Cette requête sélectionne d`abord une liste d`identifiants de clients trouvés dans le tableau des ventes (1 et 3), puis met à jour ceux qui ne figurent pas dans la liste (client 2).

    Conseils Avertissements

    • Parce que les requêtes imbriquées courent deux recherches distinctes, le temps d`exécution devient parfois un problème.

    AUTRES

    Sql tutoriel de script фото

    Sql tutoriel de script

    SQL (Structured Query Language) est un langage de programmation informatique utilisé pour gérer les données dans les…

    Db2 sql tutoriel фото

    Db2 sql tutoriel

    En utilisant un langage de requête structuré (SQL) est la clé de l`accès facile des données dans un système…

    Sql tutoriel vba фото

    Sql tutoriel vba

    Structured Query Language (SQL) est le langage informatique utilisé pour la gestion de bases de données…

    » » » » Comment utiliser select dans une instruction de mise à jour