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

Langage SQL Discussion :

Combiner INSERT INTO .. SELECT et VALUES


Sujet :

Langage SQL

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Combiner INSERT INTO .. SELECT et VALUES
    Bonjour,

    Je suis sous MySQL 5 et je souhaite faire une requête en insertion dans une table avec pour un champ de celle-ci des valeurs provenant d'une autre table et pour un autre champ une valeur fixe.

    J'ai résumé mon problème avec le modèle suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    CREATE TABLE `source` (
    `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `user_id` INT NOT NULL ,
    `tri` TEXT NOT NULL
    ) ENGINE = MYISAM ;
     
     
    CREATE TABLE `cible` (
      `id` int(11) NOT NULL auto_increment,
      `user_cible_id` int(11) NOT NULL,
      `group_id` int(11) NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE = MYISAM ;
    j'ai vu la syntaxe suivante dans les tutoriels
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    INSERT INTO table2 (id_categorie, val_max)
    SELECT categorie, MAX(valeur)
    FROM table1
    GROUP BY categorie
    http://mysql.developpez.com/faq/?pag...ertion_requete

    Problème comment combiner dans l'INSERT du SELECT et des valeurs "fixes".
    Comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO cible (user_cible_id, group_id)
    SELECT user_id FROM source , '12'

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Points : 965
    Points
    965
    Par défaut
    Bonjour,

    Si j'ai bien saisi votre demande, comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO cible (user_cible_id, group_id)
    SELECT user_id, 12 AS group_id FROM source
    Si le group_id est bien déclaré de type nombre, vous n'avez pas besoin de mettre des ' autour du 12.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Merci
    Effectivement j'avais pas pensé à utiliser un alias !!
    celà marche merci beaucoup

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Points : 965
    Points
    965
    Par défaut
    De rien, ça devrait marcher également sans l'alias, mais c'est toujours plus lisible d'en utiliser un

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. SQL : syntaxe insert into select
    Par chrislauxerrois dans le forum Access
    Réponses: 15
    Dernier message: 31/07/2006, 16h12
  2. [Oracle 9] Anomalie insert into select
    Par maxidoove dans le forum Langage SQL
    Réponses: 2
    Dernier message: 05/05/2006, 14h11
  3. probleme dans un INSERT INTO...........SELECT
    Par briiice dans le forum Requêtes
    Réponses: 5
    Dernier message: 26/01/2006, 15h13
  4. Incrémenter champ : insert into . select max(.) + 1 from .
    Par ludo.guy dans le forum Langage SQL
    Réponses: 10
    Dernier message: 25/11/2004, 14h39
  5. Erreur lors d'une requete insert into.. select
    Par Mr N. dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 04/11/2004, 17h32

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