Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2012, 09h55   #1
Invité de passage
 
Homme Denis
Webmaster
Inscription : septembre 2011
Messages : 8
Détails du profil
Informations personnelles :
Nom : Homme Denis
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Webmaster
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2011
Messages : 8
Points : 1
Points : 1
Par défaut mettre les résultat d'une requête sur plusieurs colonne

Bonjour,
voilà j'ai une requête sur une BDD SPIP relative au contenu des formulaires :
Code :
1
2
3
SELECT leschamp.valeur, leschamp.id_donnee
FROM spip_forms_donnees_champs leschamp ,spip_forms_donnees don
WHERE leschamp.id_donnee=don.id_donnee AND don.id_form=12
Qui fonctionne bien et qui me renvoie un résultat du type :
prenom1,520
nom1,520
mail1,520
prenom2,521
nom2,521
mail2,521
Nom, prénom et mail sont dans une même colonne (valeur), or j'aimerais avoir une réponse en groupant par ligne les valeur qui ont un id_donnee identique (520 dans l'exemple).
Je tourne en rond et ne sais pas comment m'y prendre pour obtenir un tel résultat.
Si quelqu'un a une idée sur la façon de s'y prendre, je le remercie par avance.
irma2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 10h22   #2
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 658
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 658
Points : 2 661
Points : 2 661
bonjour,

Comment reconnait-on un prénom d'un nom et d'un mail vu votre structure ...?

impossible en l'état.

fin bref, regardez du côté de group concat http://dev.mysql.com/doc/refman/5.0/...functions.html

Et normalisez un peu vos jointure ! http://sqlpro.developpez.com/cours/sqlaz/jointures/
punkoff est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 11h14   #3
Invité de passage
 
Homme Denis
Webmaster
Inscription : septembre 2011
Messages : 8
Détails du profil
Informations personnelles :
Nom : Homme Denis
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Webmaster
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2011
Messages : 8
Points : 1
Points : 1
Bonjour,
et merci pour la réponse.
Pour la normalisation des jointures, impossible, ce sont des tables toutes faites par spip et je ne suis pas en mesure de redévelopper le plugin qui se sert de ces tales.
Je regarde vos liens dès que possible.
Encore merci pour votre rapidité.
irma2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 18h56   #4
Membre Expert
 
Homme Eric Dureuil
Développeur informatique
Inscription : avril 2011
Messages : 874
Détails du profil
Informations personnelles :
Nom : Homme Eric Dureuil
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2011
Messages : 874
Points : 1 361
Points : 1 361
vu que c'est un formulaire ouvert, est-ce que tu as une colonne du genre leschamp.type ou leschamp.nom qui permet de différencier tes valeurs?

et est-ce que le nombre des types des valeurs est variable ou fixe (toujours 3) ?

déjà normalise ta requête avec une jointure...

ensuite, tu as 2 approches:
  • si fixe, autan de inner join pour obtenir chaque valeur en une ligne
  • si tu veux récupérer toutes les valeurs dont le nombre est variable, group_concat et un group by sur leschamp.id_donnee
__________________
Eric Dureuil, développeur web, c/c++, java indépendant
soyons
pensez à mettre et
ericd69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2012, 11h09   #5
Invité de passage
 
Homme Denis
Webmaster
Inscription : septembre 2011
Messages : 8
Détails du profil
Informations personnelles :
Nom : Homme Denis
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Webmaster
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2011
Messages : 8
Points : 1
Points : 1
Bonjour,
et merci pour ton aide.
Le problème est que ces données proviennent d'un formulaire spip, et qu'il ne m'est ni possible de changer le formulaire, ni les tables qui récupèrent les données.
En fait, j'ai créer une table ou j'importe mon résultat de requête, et j'essaie de mettre en place un script php pour obtenir ce que je veux.
Sinon, le nombre de valeur est variable !
En tout cas, merci de votre aide.
irma2011 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h26.


 
 
 
 
Partenaires

Hébergement Web