Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481

    [MySQL] Join oppure no???

    Ho due tabelle, una è un'anagrafica (nome, cognome, ..., id_provincia), e l'altra e la lista delle province italiane (id, provincia, ecc...).

    Per tirare fuori la lista dei nomi con il nome della provincia, è meglio fare un Join o usare una select tipo questa?

    SELECT *
    FROM anagrafica, province
    WHERE anagrafica.id_provincia=province.id;

    Che ne dite?

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Quella E' una join

  3. #3
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da luca200
    Quella E' una join
    Che cambia tra una join in cui non uso il termine join e una join in cui scrivp left join o simili??? Qual è la soluzione sintattica più giusta per questa situazione?

  4. #4
    Utente di HTML.it L'avatar di Sgurbat
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    una join può essere scritta nella forma "tradizionale" mettendo l'elenco delle tabelle interessate dopo il from oppure adeguare la sintassi SQL allo standard SQL92 con appunto il costrutto INNER JOIN.

    Entrambe danno gli stessi frutti.

    Una LEFT JOIN invece è concettualmente diversa in quanto non si limita a matchare e restituire i dati di due tabelle ma restituisce sempre tutti quelli della prima tabella anche nel caso non abbiano un valore associato nella seconda, è spesso usata proprio per trovare campi NULL.

  5. #5
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da Sgurbat
    una join può essere scritta nella forma "tradizionale" mettendo l'elenco delle tabelle interessate dopo il from oppure adeguare la sintassi SQL allo standard SQL92 con appunto il costrutto INNER JOIN.

    Entrambe danno gli stessi frutti.

    Una LEFT JOIN invece è concettualmente diversa in quanto non si limita a matchare e restituire i dati di due tabelle ma restituisce sempre tutti quelli della prima tabella anche nel caso non abbiano un valore associato nella seconda, è spesso usata proprio per trovare campi NULL.
    Grazie delle delucidazioni, la sintassi della inner join qual è? Come lo applicate a questo esempio?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    18
    SELECT * FROM anagrafica INNER JOIN province
    ON anagrafica.id_provincia=province.id;


  7. #7
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    Originariamente inviato da vdavide
    SELECT * FROM anagrafica INNER JOIN province
    ON anagrafica.id_provincia=province.id;

    grazie mille!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    Prova a guardare questa guida di html.it sui JOIN se ti può essere di aiuto. LINK



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.