Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Query ?ricorsiva? per un forum

    Salve,

    ho una tabella (chiamiamola "list") con questa struttura:
    id | parent | name | position

    Mettiamo che ho i seguenti dati:
    0 | -1 | Categoria 1 | 0
    1 | 0 | Forum 1 | 0
    2 | 0 | Forum 2 | 1
    3 | -1 | Categoria 2 | 1
    4 | 2 | Sotto-Forum 1 | 0
    5 | 4 | Sotto-sotto-Forum 1 | 0

    E così via...

    E' possibile non eseguire una query per ogni categoria (ad esempio come fa IPB2, mi sembra, estrae tutti i valori e poi li "ordina")?

    Chi mi fa un esempio di query?



  2. #2

  3. #3
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    ciao,

    se vuoi ottenere, con una sola query, una cosa del tipo
    Categoria1 > Forum2 > sotto-forum1 > sotto-sotto-forum 1
    questa impostazione non te lo consente: devi creare per forza una funzione ricorsiva

    in questo articolo:
    http://www.sitepoint.com/article/hie...-data-database
    trovi discussa questa tecnica oltre ad una diversa implementazione che sfrutta i nested set. con i nested set hai un'implementazione piu laboriosa, ma piu flessibile (che ti consente tra l'altro di fare quello che vuoi con una sola query)
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  4. #4
    potresti anche usare un sistema di riferimenti circolare, un po incasinato, ma ti risolve anche lui il problema

    xo nn so dove trovarti documentazione su internet prova a cercare su google

    ------

    pardon, ho visto ora che il link che ti ha postato marco è esattamente la stessa cosa a cui mi riferivo io

  5. #5

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.