Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    387

    Aiuto su query SQL complessa

    Buongiorno a tutti e buon anno!

    Ho una query SQL decisamente complessa, ora cercherò di ridurla un po'.

    Lo scenario è il seguente:

    1) tabella "utenti" con "id", "nome", "regione", "provincia", "comune" questi 3 numerici
    2) tabella "regioni"
    3) tabella "province"
    4) tabella "comuni"
    5) tabella "sport" con "id" e "sport"
    6) tabella "relazioni" con "id_user" e "id_sport", questo perchè per normalizzare il DB un utente può fare più sport.

    La prima parte di SQL viene bene, dove da numerici le regioni//province//comuni le faccio diventare testuali

    codice:
    SELECT id, nome, regioni.regione AS regione_testo, province.provincia AS provincia_testo, comuni.comune AS comune_testo FROM utenti,
    INNER JOIN regioni ON ristoranti.regione = regioni.id 
    INNER JOIN province ON ristoranti.provincia = province.id 
    INNER JOIN comuni ON ristoranti.comune = comuni.id 
    WHERE utenti.id = 1
    E quindi come immaginate stampo una tabella coi noi delle regioni//province//comuni invece degli ID.
    Ora vorrei unire, alla tabella di cui sopra, anche gli sport che un utente fa, pero' gli sport possono essere anche più di uno o zero.

    E già da qui mi viene il dubbio. Se un utente fa N (dove N è >1) , la inner join mi stampa più righe con lo stesso utente.id ? o non è la cosa corretta?

    Vi chiedo un grandissimo favore se potreste aiutarmi... grazie mille....

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    387
    Risoto! Aggiungendo una tabella derivata con una nuova select all'interno di una innerjoin

    grazie cmq a tutti e ancora buon anno!

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