SQL Unirsi implicitamente

Esempio

Join possono anche essere eseguite da avere più tabelle nel from clausola separati da virgole , e definisce il rapporto tra loro in where clausola. Questa tecnica è chiamata un'adesione implicita (poiché in realtà non contiene una clausola join ).

Tutti gli RDBMS lo supportano, ma di solito la sintassi viene sconsigliata. I motivi per cui è una cattiva idea usare questa sintassi sono:

  • È possibile ottenere crossover accidentali che restituiscono risultati errati, soprattutto se si hanno molti join nella query.
  • Se intendevi un cross join, allora non è chiaro dalla sintassi (scrivi invece CROSS JOIN), e qualcuno potrebbe cambiarlo durante la manutenzione.

Nell'esempio seguente verranno selezionati i nomi dei dipendenti e il nome dei reparti per cui lavorano:

SELECT e.FName, d.Name
FROM   Employee e, Departments d
WHERE  e.DeptartmentId = d.Id

Ciò restituirebbe il seguente dal database di esempio :

d.nome d.Name
Giacomo HR
John HR
Richard I saldi