Oracle
 sql >> Database >  >> RDS >> Oracle

JOIN espliciti vs join impliciti?

Il tuo professore dovrebbe parlare con Gordon Linoff, che è un professore di informatica alla Columbia University. Gordon, e la maggior parte degli appassionati di SQL su questo sito, ti diranno quasi sempre di usare la sintassi di join esplicita. Le ragioni di ciò sono molte, tra cui (ma non limitate a):

  • I join espliciti rendono facile vedere qual è la logica di join effettiva. I join impliciti, d'altra parte, offuscano la logica di join, diffondendola su entrambi i FROM e WHERE clausole.
  • Lo standard ANSI 92 consiglia l'uso di join espliciti moderni e in effetti ha deprecato il join implicito che il tuo professore sembra spingere

Per quanto riguarda le prestazioni, per quanto ne so, entrambe le versioni della query che hai scritto sarebbero ottimizzate per la stessa cosa sotto il cofano. Puoi sempre controllare i piani di esecuzione di entrambi, ma dubito che molto spesso vedresti una differenza significativa.