Visualizzazione dei risultati da 1 a 2 su 2

Discussione: join con 3 tabelle

  1. #1

    join con 3 tabelle

    Ho 3 tabelle:
    utente,ente,locazione

    che sono legate così:
    ogni ente ha una locazione quindi
    ente.locazione=locazione.id
    certi utenti possono essere degli enti.
    ente.id=utente.id
    ma nn tutti

    Ora devo fare una selezione di tutti gli utenti eper quelli che sono anche enti prendere informazioni relative all'ente

    Ma provando a scrivere la query però riesco solo a selezionare solo gli utenti che sono anche enti:

    SELECT * , utente.id AS utente_id, locazione.nome AS locazione_nome, locazione_tipo.nome AS locazione_tipo_nome, locazione.id AS locazione_id
    FROM utente, ente, locazione, locazione_tipo
    WHERE locazione.tipo = locazione_tipo.id
    AND ente.locazione = locazione.id
    AND ente.id = utente.id

    Penso che il tutto si possa risolvere con un left join: tipo:
    utente left join ente on ente.id=utente.id

    Ma il problema è che è presente anche la tabella locazione e nn riesco a farlo???
    Come devo fare?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483

    Re: join con 3 tabelle

    se non sbaglio in pieno dovrebbe essere così


    SELECT utente.*, locazione.*, ente.* FROM ente INNER JOIN locazione ON ente.locazione = locazione.id LEFT JOIN utente ON utente.id = ente.id

    sostituisci " utente.*, locazione.*, ente.* "... con quello che ti serve




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.