Разница между JOIN и USING в PostgreSQL заключается в том, что JOIN определяет наиболее общую форму условия соединения, а USING — это сокращённая запись условия, полезная в ситуации, когда с обеих сторон соединения столбцы имеют одинаковые имена. 12
JOIN выдаёт все столбцы из одной таблицы, а за ними все столбцы из другой. 1 USING выводит один столбец для каждой пары (в указанном порядке), за ними все оставшиеся столбцы из одной таблицы и, наконец, все оставшиеся столбцы другой. 1 При этом при выводе JOIN USING исключаются избыточные столбцы: оба сопоставленных столбца выводить не нужно, так как они содержат одинаковые значения. 1
Таким образом, JOIN используется для общего условия соединения, а USING — для ситуации, когда имена столбцов идентичны с обеих сторон соединения. 34