Requête MySQL et création de Menus

Requête MySQL et création de Menus - SQL/NoSQL - Programmation

Marsh Posté le 06-12-2004 à 20:51:38    

Salut à tous,
J'ai une table dans laquelle j'ai un champ catégorie qui contient le nom de la catégorie et il y a plusieurs enregistrements (au total environ 18'000 enr.) qui ont le même nom de catégorie (au total env. 20 catégories différentes).
Je souhaite qu'une requête MySQL me transmette les noms des différentes catégories existantes afin de créer un menu déroulant.
Comment faire?
Quelle fonction PHP?
Quelle requête?
J'ai réfléchi, mais n'ai pas trouvé, une idée?
 
Merci de votre aide.


Message édité par polo7 le 06-12-2004 à 20:52:08
Reply

Marsh Posté le 06-12-2004 à 20:51:38   

Reply

Marsh Posté le 07-12-2004 à 11:10:35    

select distinct catnom from latable

Reply

Marsh Posté le 07-12-2004 à 11:11:00    

PS: dans ton cas, une table de férérence avec une FK ne me semble pas un luxe.

Reply

Marsh Posté le 09-12-2004 à 10:27:02    

Merci pour votre aide.
Entre-temps, j'ai trouvé, il faut utiliser GROUP BY dans la requête et c'est OK.
Merci

Reply

Marsh Posté le 09-12-2004 à 10:36:47    

Arjuna a écrit :

PS: dans ton cas, une table de férérence avec une FK ne me semble pas un luxe.


 :ouch: +1
 
En effet, si tu te tapes ce query pas gratuit à chaque fois que tu as besoin de créer le menu... les perfs vont souffrir!


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 10-12-2004 à 22:40:25    

OK, je vois, faire un GROUP BY et avec cette requete, créer un nouvelle table en fait, qui elle sera utilisée pour les menus?
Le truc c'est que la table contenant 18'000 entrées sera mise à jour presque tous les jours pour l'ensemble des enregistrements.

Reply

Marsh Posté le 11-12-2004 à 00:50:59    

C'est pas gênant ça.
Faut juste que tu aies une table de référence contenant tous les menus, et dans la table des entrées de menus, tu indiques les codes qu'il y a dans la table de référence.
 
Ainsi, avec un FK, tu es certain qu'un menu existe bien quand tu le saisis (pas d'erreur de saisie possible) et surtout, tu récupères facilement la liste de tous les menus.

Reply

Marsh Posté le 11-12-2004 à 00:51:51    

PS: et sinon, pour ta requête, utilise un DISTINCT et non pas un GROUP BY. Un GROUP BY ça sert pas à ça du tout (même si dans un cas simple comme ça on arrive au même résultat)

Reply

Marsh Posté le 31-12-2004 à 10:46:23    

Merci bien pour les infos, je vais metter ça en place et aussi utiliser DISTINCT.
 
Bonne années et milles merci.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed