Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di nat99
    Registrato dal
    Dec 2001
    Messaggi
    763

    [MySql] Trasformazione da verticale ad orizzontale

    Salve.
    Ho la tabella catalogo_categorie con i seguenti campi
    id
    id_categoria
    categoria

    La tabella cosi composta
    id id_categoria categoria
    1 0 nome_categoria_1
    2 0 nome_categoria_2
    3 1 nome_sottocategoria_1
    4 1 nome_sottocategoria_2
    5 3 nome_sottosottocategoria_3

    Vorrei che la query mi restituisse qualcosa del genere

    nome_categoria_1
    nome_categoria_1 nome_sottocategoria_1
    nome_categoria_1 nome_sottocategoria_1 nome_sottosottocategoria_3
    nome_categoria_2
    nome_categoria_2 nome_sottocategoria_2


    Grazie mille

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    231
    c'è un errore? dovrebbe essere così giusto?

    4 2 nome_sottocategoria_2
    Se la risposta ti è stata in qualche modo di aiuto o ti va di supportarmi metti "mi piace" alla pagina a questo link

    https://www.facebook.com/blogprogrammatori

    Non ti costa nulla!!

  3. #3
    Utente di HTML.it L'avatar di nat99
    Registrato dal
    Dec 2001
    Messaggi
    763
    Originariamente inviato da Enkh
    c'è un errore? dovrebbe essere così giusto?

    4 2 nome_sottocategoria_2
    No "nome_sottocategoria_2" è sottocategoria di nome_categoria_2 (id 2)

    Nat

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    231
    Originariamente inviato da nat99
    No "nome_sottocategoria_2" è sottocategoria di nome_categoria_2 (id 2)

    Nat
    Quindi va bene la correzione che ho fatto! dove sbaglio?
    Se la risposta ti è stata in qualche modo di aiuto o ti va di supportarmi metti "mi piace" alla pagina a questo link

    https://www.facebook.com/blogprogrammatori

    Non ti costa nulla!!

  5. #5
    Utente di HTML.it L'avatar di nat99
    Registrato dal
    Dec 2001
    Messaggi
    763
    Originariamente inviato da Enkh
    Quindi va bene la correzione che ho fatto! dove sbaglio?

    Scusa... ho scritto una cavolata...
    No "nome_sottocategoria_2" è sottocategoria di nome_categoria_1 (id 1)


  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    231
    quindi vuoi ottenere

    nome_categoria_1

    nome_categoria_1 nome_sottocategoria_1

    nome_categoria_1 nome_sottocategoria_1 nome_sottosottocategoria_3

    nome_categoria_1 nome_sottocategoria_2

    nome_categoria_2

    giusto??
    Se la risposta ti è stata in qualche modo di aiuto o ti va di supportarmi metti "mi piace" alla pagina a questo link

    https://www.facebook.com/blogprogrammatori

    Non ti costa nulla!!

  7. #7
    Utente di HTML.it L'avatar di nat99
    Registrato dal
    Dec 2001
    Messaggi
    763
    Originariamente inviato da Enkh
    quindi vuoi ottenere

    nome_categoria_1

    nome_categoria_1 nome_sottocategoria_1

    nome_categoria_1 nome_sottocategoria_1 nome_sottosottocategoria_3

    nome_categoria_1 nome_sottocategoria_2

    nome_categoria_2

    giusto??

    in pratica si, i livelli (qui mi sn fermato a 3) saranno al massimo 5
    grazie

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    231
    Questa query ti fa l'alberatura. Partendo da questa poi puoi eseguire lo split tramite php.
    Ti può essere d'aiuto?

    codice:
    SELECT
     C1.`categoria`
    ,C2.`categoria`
    ,C3.`categoria`
    ,C4.`categoria`
    ,C5.`categoria`
    FROM categorie AS C1
    LEFT JOIN categorie AS C2 ON C1.id = C2.`id_categoria`
    LEFT JOIN categorie AS C3 ON C2.id = C3.`id_categoria`
    LEFT JOIN categorie AS C4 ON C3.id = C4.`id_categoria`
    LEFT JOIN categorie AS C5 ON C4.id = C5.`id_categoria`
    WHERE
    C1.`id_categoria` = 0
    ORDER BY
     C1.`categoria`
    ,C2.`categoria`
    ,C3.`categoria`
    ,C4.`categoria`
    ,C5.`categoria`

    categoria categoria categoria categoria categoria
    nome_categoria_1 nome_sottocategoria_1 nome_sottosottocategoria_3 NULL NULL
    nome_categoria_1 nome_sottocategoria_2 NULL NULL NULL
    nome_categoria_2 NULL NULL NULL NULL
    Se la risposta ti è stata in qualche modo di aiuto o ti va di supportarmi metti "mi piace" alla pagina a questo link

    https://www.facebook.com/blogprogrammatori

    Non ti costa nulla!!

  9. #9
    Utente di HTML.it L'avatar di nat99
    Registrato dal
    Dec 2001
    Messaggi
    763
    Ciao!
    Grazie mille, ma non è quello che vorrei realizzare.

    Mi serve senza lo split in php ma direttamente da query sql.


  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    231
    perchè cosa devi fare?
    Se la risposta ti è stata in qualche modo di aiuto o ti va di supportarmi metti "mi piace" alla pagina a questo link

    https://www.facebook.com/blogprogrammatori

    Non ti costa nulla!!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.