CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Aide simplification requête

CuneytCakir
CuneytCakir
Niveau 8
03 juillet 2013 à 14:55:19

J'ai écris un code permettant de générer un menu déroulant en prenant les info de la base.
Voilà le code : http://pastebin.com/LVy2bPKC
Cela fonctionne, mais j'ai une requête dans une boucle :malade: , je pense la simplifier avec une jointure mais comment reconnaitre s'il y a bien des sous rubriques ?
Par avance merci :) .

vava740
vava740
Niveau 10
03 juillet 2013 à 15:21:25

Tu ne pourras pas tout faire en une requête, enfin ça aurait pu se faire avec LEFT|RIGHT JOIN mais tu te serais retrouvé avec des doublons dans les rubriques, typiquement en prenant juste les id (et la rubrique 2 qui n'a aucune sous rubrique) :

rubrique_id,sous_rubrique_id
1,1
1,2
1,3
2,NULL
3,1
3,2

Alors ouais tu aurais qu'une requête mais ça duplique des données et c'est moins évident pour boucler dessus.

Ce que tu peux faire, c'est une fois la première requête exécutée, sélectionner toutes les sous rubriques avec un id_rubrique IN (liste,des,ids,de,la,premiere,requete).

Il faudrait quand même faire un petit traitement pour associer chaque sous rubrique à la rubrique parente via l'id avant de faire la boucle d'affichage.

Au passage je ne penses pas que ce soit utile de bosser avec deux tables rubriques/sous_rubriques, à mon avis ce serait mieux d'avoir un champ "niveau" dans la table rubriques et un champ rubrique_parente optionnel. Ça permettrait entre autres de ne pas être limité à un seul niveau d'imbrication des rubriques.

CuneytCakir
CuneytCakir
Niveau 8
03 juillet 2013 à 15:49:31

Merci :content: , j'avais pensé à utiliser qu'une seule table c'est ce que je vais faire. Encore merci :)

deepblue
deepblue
Niveau 16
03 juillet 2013 à 17:00:37

http://en.wikipedia.org/wiki/Nested_set_model :ok:

vava740
vava740
Niveau 10
03 juillet 2013 à 17:08:08

@deepblue: Ça a l'air intéressant comme concept, mais ça risque pas de devenir rapidement lourd de tout réindexer à chaque insertion / modification ?

deepblue
deepblue
Niveau 16
03 juillet 2013 à 22:48:24

Osef pour le temps à la persistance et pour l'utiliser tous les jours, ça n'est pas lent.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment