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 :

select id avec une comparaison sur deux tables d'un CHAR avec deux CHAR CONCAT


Sujet :

Requêtes MySQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut select id avec une comparaison sur deux tables d'un CHAR avec deux CHAR CONCAT
    Bonjour à tous,

    Je cherche à selectionner les id d'une table où se trouve des noms en ne selectionnant que les id dont les nom se trouve dans une autre tables j'ai donc fais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT id FROM sportif WHERE liste_participant.participant = sportif.nom+' '+sportif.prenom
    Sachant que les dans la table evenement nom et prénom sont stocker dans la même colonne mais pas dans sportif...

    Merci pour l'aide

    PS: L'erreur vous l'aurez tous trouvé il me dit que

    Unknown column 'liste_participant.participant' in 'where clause'

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Pour tester l'existance il y a EXISTS ou IN
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT id FROM sportif s
    WHERE exists (select 1 from liste_participant lp where lp.participant = concat(s.nom,' ',s.prenom)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Le probléme en faite était que dans "FROM" j'avais pas spécifié liste_participant sinon maitenant j'ai un probléme avec la concaténation sachant que je voudrais un espace entre prenom et nom

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT s.* FROM sportif s, liste_participant l WHERE s.prenom+''+s.nom = l.participant

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    As tu essayé ma requête?
    Pour concaténer c'est CONCAT et pas +

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par skuatamad Voir le message
    Pour tester l'existance il y a EXISTS ou IN
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT id FROM sportif s
    WHERE exists (select 1 from liste_participant lp where lp.participant = concat(s.nom,' ',s.prenom)

    ça fonctionne pas, mais je comprend pas pourquoi dans le second select tu fais select 1 (c'est comme * ?) et je ne cherche pas à tester l'existence en faite je sais que le nom y est exactement écrit pareille, j'ai fais cette requête qui fonctionne mais j'arrive pas à ajouter l'espace...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT s.id FROM sportif s, liste_participant lp WHERE lp.participant = concat(s.nom,s.prenom)

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    ça y est j'ai trouvé, je sais pas pourquoi mais l'espace ne marché pas avant dans concat bref :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT s.id FROM sportif s, liste_participant lp WHERE lp.participant = concat(s.prenom,' ',s.nom)

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

Discussions similaires

  1. COUNT avec une condition sur 2 tables
    Par remivng dans le forum Requêtes
    Réponses: 2
    Dernier message: 22/12/2014, 21h24
  2. Réponses: 0
    Dernier message: 24/09/2013, 14h30
  3. [AC-2007] Me.OrderBy avec une jointure sur la table
    Par Cinesra dans le forum VBA Access
    Réponses: 9
    Dernier message: 17/12/2010, 09h00
  4. Probleme avec une requête sur 2 tables
    Par Sieg Hart dans le forum Requêtes
    Réponses: 3
    Dernier message: 09/01/2009, 14h14
  5. Réponses: 4
    Dernier message: 23/10/2006, 09h09

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