Questo è troppo lungo per un commento. Non utilizzare join naturali. Non preoccuparti di imparare i join naturali. Sono un abominio.
Come mai? Le condizioni di unione si basano su colonne con gli stessi nomi . I natural join non tengono nemmeno conto delle relazioni di chiave esterna dichiarate. Questo può essere abbastanza pericoloso. Oppure, nel mio caso, perché quasi tutte le mie tabelle hanno CreatedAt
e CreatedBy
, sono comunque inutili.
Invece, elenca il join
chiavi. Nel tuo caso (perché hai select *
), il using
la clausola è la più appropriata:
SELECT *
FROM R JOIN
S
USING (A, B);
Questo ha anche il vantaggio che le chiavi sono mostrate in modo esplicito nella query, il che riduce notevolmente la possibilità di errori.