1- È un gioco da ragazzi, usa il Tipo I
2- I join di tipo II sono anche chiamati 'join impliciti', mentre i join di tipo I sono chiamati 'join espliciti'. Con il moderno DBMS, non avrai alcun problema di prestazioni con la query normale. Ma penso che con alcune query multi join complesse e complesse, il DBMS potrebbe avere problemi con il join implicito. L'utilizzo del solo join esplicito potrebbe migliorare il tuo piano di spiegazione, quindi risultati più rapidi!
3- Quindi le prestazioni potrebbero essere un problema, ma forse la cosa più importante è che la leggibilità è migliorata per un'ulteriore manutenzione. Il join esplicito spiega esattamente cosa vuoi unire su quale campo, mentre il join implicito non mostra se crei un join o un filtro. La clausola Where è per il filtro, non per l'adesione!
E un grande punto importante per il join esplicito:il join esterno è davvero fastidioso con il join implicito. È così difficile da leggere quando vuoi join multipli con join esterno che il join esplicito è LA soluzione.
4- Il piano di esecuzione è ciò di cui hai bisogno (Vedi il documento )
Alcuni duplicati :
Join SQL espliciti e impliciti
Join SQL:clausola where vs. clausola on
Clausola INNER JOIN ON vs WHERE