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

PHP & Base de données Discussion :

afficher un seul enregistrement [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 177
    Par défaut afficher un seul enregistrement
    salut ,
    j'ai la table par ex test (id,nom,prenom) et les enregistrement suivants :
    1-aa-aaaa
    2-aa-bbbb
    3-aa-cccc
    4-rr-ttttt
    5-ff-gggg
    **************
    et je veux les afficher un seul nom avec un seul prenom comme ça:

    aa-aaaa
    rr-ttttt
    ff-gggg

    et merci d'avance

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Bonjour,
    que n'arrivez-vous à faire?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      // SELECT nom, prenom FROM test
     
      while(list($nom, $prenom) = mysql_fetch_row($res)) echo $nom.' '.$prenom."<br />\n";
    C'est ça que vous n'arrivez pas à faire?

    Cordialement,
    DaRiaN.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Je pense qu'il veux n'afficher que le premier prénom de chaque nom

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 177
    Par défaut
    non je ne veux pas repeter un nom 2 fois je veux afficher un seul nom avec son prenom meme si un nom existe 2 ou 3 fois dans la table sachant que son prenom ne se répete pas.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 177
    Par défaut
    oui exactement Eric.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Et comment savez quel prénom vous voulez associé au nom? S'il y a trois choix possible...

  7. #7
    Membre chevronné Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Par défaut
    Les clauses sql distinct ou group by pourraient t'aider.

  8. #8
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Oui, ça pourrait l'aider :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT `nom`, `prenom` FROM `test` GROUP BY `nom`
    Mais comment choisir quel prénom va ressortir? Il n'y a pas vraiment d'interet... cela va être le premier inséré.

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Je pense qu'il veux prendre le premier des prénom.

    Je pense qu'il est obligé de faire une sous-requete dans ce cas, je suis pas sur que le group by suffise

  10. #10
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Ma ligne est parfaitement fonctionnelle, je l'ai testée.

    Edit : autant pour moi, vous parliez d'une requête pour récupérer le premier prénom par ordre alphabétique et non d'insertion.

  11. #11
    Membre chevronné Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Par défaut
    Tout dépend quel critére il veut utiliser pour sélectionner tel prénom ....

  12. #12
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 177
    Par défaut
    si je vais utiliser les sous-requettes il y'a des noms qui qui ne se repete pas c'est a dire un seul nom et avec son seul prenom .

  13. #13
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT `nom`, `prenom` FROM `test` GROUP BY `nom`
    Je suis pas sur que ca marche, il regroupe comment les prénoms ?

    J'ai pas MySQL sous la main pour tester, mais je viens de tester sous DB2, il accepte pas des colonnes dans le SELECT qui ne soit pas dans le GROUP BY

  14. #14
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Effectivement, après consultation de la doc, contrairement à SQL classique, mySQL accepte depuis certaines versions de mettre des colonnes dans le SELECT qui ne sont pas dans le GROUP BY.

    Mais la valeur de prénom seras inatendu, sauf à utiliser une fonction

    s'il veux le premier prénom dans l'ordre alphabétique, Il devrait pouvoir faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT `nom`, MIN(`prenom`) FROM `test` GROUP BY `nom`

  15. #15
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Et moi qui ramait avec une table temporaire alors que la fonction MIN fonctionne aussi pour les chaines de caractères?

    Merci, j'en prends note.

  16. #16
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 177
    Par défaut
    Merci mes amis.

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

Discussions similaires

  1. [AC-2007] Afficher un seul enregistrement dans formulaire
    Par chossette9 dans le forum IHM
    Réponses: 5
    Dernier message: 13/08/2012, 20h26
  2. [WD15] Champ table qui n'affiche qu'un seul enregistrement
    Par ykydra dans le forum WinDev
    Réponses: 8
    Dernier message: 02/11/2010, 16h33
  3. Réponses: 4
    Dernier message: 15/03/2010, 12h11
  4. [MySQL] Comment afficher une seul fois un field s'il apparait dans plusieurs enregistrements
    Par pierrot10 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/05/2009, 17h11
  5. ROLLBACK sur une seul enregistrement
    Par toctoc80 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 30/04/2004, 21h22

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