При использовании обозначения, как это:
table1,table2
вы строите потенциально CROSS JOIN
но вы поставили в WHERE
пункте условие table1.key = table2.key
поэтому ваш CROSS JOIN
становится INNER JOIN
.
Я совет вам использовать явное обозначение о JOIN, вместо использования запятой, как ваш запрос написать это:
select table1.column, table2.column
from table1
inner join table2
on table1.key = table2.key
where (some filter conditions)
Таким образом, вы exactely знать, какие JOIN
вы хотите использовать и SQL синтаксического анализа, если вы miss some clause (as ON) предупреждает вас
Используйте явный синтаксис 'join', и вам не придется беспокоиться о таких деталях. –
, когда вы это делаете, вы делаете INNER JOIN. – d34n5
Я использую Oracle DB ... так же, как и внутреннее соединение ... ie select table1.column, table2.column from table1 inner join table2 где table1.key = table2.key и (некоторые условия фильтра) – user3514648