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

Requêtes MySQL Discussion :

probleme concatenation


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2
    Par défaut probleme concatenation
    Bonjour,
    Je souhaite rediriger une requête de concaténation sur ma première table (3 champs) vers ma seconde table (2 champs au lieu de 3) de façon à ce qu'elle la remplisse

    Bon, si je fais deux INSERT INTO :

    première colonne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table2 (produit) SELECT produit FROM table1
    seconde colonne (concaténation):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table2 (nom) SELECT CONCAT(prefixe,suffixe) AS nom FROM table1
    Ca rempli bien la base mais au lieu de me mettre
    |produit1|nom1(=prefixe1+suffixe1)|
    |produit2|nom2(=prefixe2+suffixe2)|

    j'obtiens
    |produit1| (vide) |
    |produit2| (vide) |
    | (vide) |nom1(=prefixe2+suffixe2)|
    | (vide) |nom2(=prefixe2+suffixe2)|

    Là, je comprends bien ce qui se passe puisque j'ai un auto-incrément la seconde requête poursuit l'incrémentation.

    J'ai donc essayé ça pour n'avoir qu'une seule requête remplissant mes deux colonnes (une seule incrémentation théoriquement):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table2 (produit,nom) VALUES ((SELECT produit FROM table1),(SELECT CONCAT(prefixe,suffixe) AS nom FROM table1))
    J'obtiens un #1242 - Subquery returns more than 1 row
    Je ne comprends pas où se situe le problème... J'ai passé un bon moment sur Google sans résultat! Est-ce que j'ai loupé quelque chose? Quelqu'un a-t-il une idée?
    Merci d'avance
    N.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    Et comme ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO table2 (produit, nom) 
    SELECT table1.produit, CONCAT(table1.prefixe, table1.suffixe) FROM table1

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2
    Par défaut [résolu]problème concaténation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO table2 (produit, nom)
    SELECT table1.produit, CONCAT(table1.prefixe, table1.suffixe) FROM table1
    Merci, ça marche impeccable! Il me semblait pourtant logique de passer par un 'AS'
    N.

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

Discussions similaires

  1. Probleme Concatenation VBA
    Par vadius dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/07/2011, 12h38
  2. probleme concatenation AnsiString
    Par manworms2 dans le forum C++Builder
    Réponses: 2
    Dernier message: 06/12/2008, 21h42
  3. Probleme concatenation avec postgresql
    Par JUSTIN Loïc dans le forum PostgreSQL
    Réponses: 10
    Dernier message: 24/08/2006, 15h49
  4. probleme concatenation
    Par darkprophet dans le forum C++
    Réponses: 7
    Dernier message: 12/03/2006, 03h39
  5. probleme de concatenation
    Par cyna dans le forum C
    Réponses: 2
    Dernier message: 23/08/2002, 10h41

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