IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Regrouper résultat de plusieurs blocs d'instructions


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de WDKyle
    Homme Profil pro
    Analyste-Programmeur
    Inscrit en
    Septembre 2008
    Messages
    1 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-Programmeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 204
    Par défaut Regrouper résultat de plusieurs blocs d'instructions
    Bonjour,

    Je suis sous SQL Server 2012 Express, je ne suis pas un expert en SQL et je cherche un moyen de regrouper les résultats de plusieurs blocs d'instructions que voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    INSERT INTO Jeux (Nom, Description, Couleur_RVB, Type)
    SELECT Nom, Description, Couleur_RVB, Type
    FROM Jeux
    WHERE IDJeux = '4'
     
    SELECT IDJeux, Nom, Description, Couleur_RVB, Type
    FROM Jeux
    WHERE IDJeux = @@IDENTITY
     
    INSERT INTO Jeux (Nom, Description, Couleur_RVB, Type)
    SELECT Nom, Description, Couleur_RVB, Type
    FROM Jeux
    WHERE IDJeux = '5'
     
    SELECT IDJeux, Nom, Description, Couleur_RVB, Type
    FROM Jeux
    WHERE IDJeux = @@IDENTITY
    Lors de l'exécution, cela renvoi 2 résultats séparés. J'ai regardé du coté d'UNION mais cela ne fonctionne pas dans mon cas n'ayant pas juste des SELECT...

    Avez-vous une idée svp ?

    Merci.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2008
    Messages
    699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2008
    Messages : 699
    Par défaut
    1 : D'abord les titres le nombre de colonnes doivent être identique (il y a un IDJeux qui traine)
    2 : Un union all entre chaque select va donner le resutat désiré
    3 : Une super requête pour le insert, par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    INSERT INTO Table (Colonnes)
    SELECT *
    FROM
    (
    SELECT * FROM Table1
    UNION ALL
    SELECT * FROM Table2
    UNION ALL
    SELECT * FROM Table3
    )TBL

  3. #3
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    Vous pouvez faire vos deux insert en même temps, et utiliser la clause OUTPUT :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    
    INSERT INTO Jeux (Nom, Description, Couleur_RVB, Type)
    OUTPUT INSERTED.IDJeux, INSERTED.Nom, INSERTED.Description, INSERTED.Couleur_RVB, INSERTED.Type
      SELECT Nom, Description, Couleur_RVB, Type
      FROM Jeux
      WHERE IDJeux IN('4', '5')



    Par ailleurs, si IDJeux est de type numérique (ce qui serait préférable), supprimez les simples quottes.



Discussions similaires

  1. Réponses: 4
    Dernier message: 11/07/2014, 12h55
  2. Regrouper résultat de plusieurs requêtes
    Par maylouz dans le forum Access
    Réponses: 7
    Dernier message: 11/06/2014, 11h05
  3. Réponses: 7
    Dernier message: 15/01/2014, 18h45
  4. [PowerShell] Bloc d'instruction d'une fonction sur plusieurs scripts ?
    Par suchiwa dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 20/05/2011, 10h59
  5. Réponses: 4
    Dernier message: 31/10/2006, 16h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo