Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
926 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Mysql] sélectionner 2 fois le meme champs.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Mysql] sélectionner 2 fois le meme champs.

n°278130
APLC
Corporation & Company Ltd
Posté le 01-01-2003 à 20:10:33  profilanswer
 

dans le forum que je suis ne train de mettre en place, je voudrais en une seule requete pouvoir afficher à la fois l'auteur du sujet, ainsi que l'auteur de la dernière réponse.
 
voici mes requetes actuelles:
 


$sql="SELECT forum_sujet.titre, forum_message.logon, MAX(forum_message.id_message) AS id_dernier_message, forum_message.id_sujet, (count(forum_message.id_message)-1) as nb_messages, MAX(forum_message.date) as max_date
     FROM forum_message
     LEFT JOIN  forum_sujet ON forum_message.id_sujet=forum_sujet.id_sujet
     WHERE id_categorie='$id_categorie'  
     GROUP BY forum_message.id_sujet  
     ORDER BY id_dernier_message DESC";
  $requete=mysql_query($sql);
  while ($ligne=mysql_fetch_array($requete)){
   $requete3=mysql_query("SELECT logon FROM forum_message WHERE id_sujet='$ligne[id_sujet]' ORDER BY id_message DESC LIMIT 1" );
   $ligne3=mysql_fetch_array($requete3);


 
est il possible de réaliser la même chose en une seule requete?
logon = identifiant utilisateur

mood
Publicité
Posté le 01-01-2003 à 20:10:33  profilanswer
 

n°278179
jolly
Posté le 02-01-2003 à 00:04:02  profilanswer
 

detaille un peu la forme de ta bdd en + c pas simple la .. (ta requete complexe)

n°278209
goueg
De passage
Posté le 02-01-2003 à 02:00:38  profilanswer
 
n°278255
APLC
Corporation & Company Ltd
Posté le 02-01-2003 à 10:27:17  profilanswer
 

Citation :

detaille un peu la forme de ta bdd en + c pas simple la .. (ta requete complexe)


 
Table forum_categorie:
- id_categorie
- categorie
- description
- ordre
 
Table forum_sujet:
- id_sujet
- id_categorie
- titre
 
Table forum_message:
- id_message
- id_sujet
- logon (identifiant utilisateur)
- date
- texte
 


 
En effet, je l'avais vu, ce topic, (mis à part le fait k'ils se chamaillent pour une question de vocabulaire), c'est en effet une possibilité de rajouter l'identifiant du dernier utilisateur qui a posté dans le sujet dans la table forum_sujet, mais je voulais savoir si ct pas possible de le faire sans ca...

n°279148
Kyle
Posté le 04-01-2003 à 13:26:58  profilanswer
 

[:yoyoz]  
 
ca m'interresse ! :D

n°279166
APLC
Corporation & Company Ltd
Posté le 04-01-2003 à 14:40:38  profilanswer
 

Moi ossi ca m'intéresse  :)  
mais il semble que peu de gens trouvent une réponse...  :??:

n°279170
Kyle
Posté le 04-01-2003 à 15:03:05  profilanswer
 

en effet, peut-etre que cela est impossible :/

n°279229
mrbebert
Posté le 04-01-2003 à 16:57:16  profilanswer
 

C'est une question qui revient souvent, mais j'ai toujours pas vu de réponse :(

n°279730
APLC
Corporation & Company Ltd
Posté le 05-01-2003 à 19:09:51  profilanswer
 

en fait, cela reviendrait a sélectionner 2 fois le meme champs, mais avec, à chaque fois, un critère de recherche différent...
 
Quelqu'un peut il confirmer que c'est impossible à faire en mysql avec une seule requete?

n°279732
mrbebert
Posté le 05-01-2003 à 19:13:23  profilanswer
 

2 fois la même colonne ?
Ca, c'est peut être possible. Tu aurais un exemple de résultat voulu, qu'on y voit plus clair.

mood
Publicité
Posté le 05-01-2003 à 19:13:23  profilanswer
 

n°279743
Kyle
Posté le 05-01-2003 à 19:49:25  profilanswer
 

en fait fodrait récupérer l'auteur où l'id du post est le plus grand, ce qui implique donc une clause where, non ?


Message édité par Kyle le 05-01-2003 à 19:49:47
n°279753
mrbebert
Posté le 05-01-2003 à 20:02:48  profilanswer
 

Peut être plutot un "HAVING"

n°280089
APLC
Corporation & Company Ltd
Posté le 06-01-2003 à 14:40:13  profilanswer
 

Mon exemple:
je voudrais sélectionner l'id du posteur du sujet, ainsi que l'id du posteur de la derniere reponse au sujet.
(cf description de mes tables plus haut... les id des utilisateurs s'appellent "logon" )

n°281407
Core 666
Posté le 07-01-2003 à 19:06:29  profilanswer
 

aplc a écrit :

dans le forum que je suis ne train de mettre en place, je voudrais en une seule requete pouvoir afficher à la fois l'auteur du sujet, ainsi que l'auteur de la dernière réponse.
 
[...]
 
est il possible de réaliser la même chose en une seule requete?
logon = identifiant utilisateur


Voui, c'est très faisable. Vire ta deuxième requête au profil d'un INNER JOIN. Ensuite, si tu utilises mysql_fetch_array, utilises 2 alias différents pour le champ logon afin de les différencier. Si tu utilises mysql_fetch_row, pas besoin en revanche.

n°281912
APLC
Corporation & Company Ltd
Posté le 08-01-2003 à 13:05:09  profilanswer
 

OK, je vais me renseigner sur le INNER JOIN.
 
merci pour ta réponse.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Mysql] sélectionner 2 fois le meme champs.

 

Sujets relatifs
PHP/MySQL et CDDB........Peut on tester en une seule fois une variabl tableau dans une requete?
incorporer la CDDB dans MySQL avec PHP[PHP/MySQL] Probable erreur de débutant.
Passer un dump de postresql a mysql[mysql] aide pour une requette
pb ODBC linux MySQLcherche nom user et mot de passe pour se connecter via mysql-front ...
Optimiser les tables en une seule fois avec phpMyAdmin[PHP] Amélioration de requete PHP/MySQL
Plus de sujets relatifs à : [Mysql] sélectionner 2 fois le meme champs.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR