是否存在连接不会返回具有相同条件的FROM多个表返回的数据的情况?
e.g。
SELECT *
FROM TableNames as Names
INNER JOIN TableNumbers as Numbers on Names.ID = Numbers.ID
VS
SELECT *
FROM TableNames as Names, TableNumbers as Numbers
WHERE Names.ID = Numbers.ID
答案 0 :(得分:1)
INNER JOIN(如第一个示例中所示)将始终返回与使用相同连接条件的WHERE过滤器的笛卡尔连接相同的数据(第二个示例)。
但是,请注意,对于OUTER JOIN,情况并非如此,其中NULL值在笛卡尔连接中被过滤掉,WHERE过滤器作为连接条件。
答案 1 :(得分:0)
简单地说,两个查询都是相同的并且做同样的事情。