时间:2021-07-01 10:21:17 帮助过:87人阅读
单纯的 select * from a,b 查询结果是两张表的笛卡尔积,但是如果是select * from a,b where a.id = b.id_a 等价于 select * from a inner join b on a.id = b.id_a,即内连接,但这种写法不符合规范,推荐不要这样写。
from a,b 和from a inner join b 都是笛卡尔集
on:与取得结果集同步进行数据筛选和过滤
where:取得结果集后才进行数据筛选和过滤
执行顺序:on在上游,where在中游,having在下游,由此可见,要想过滤条件起到正确的作用,首先要明白这个条件应该在什幺时候起作用,然后再决定放在那里
left join,会返回左表中所有的行,即使在右表中没有匹配记录
right join 会返回右表中所有的行,即使在左表没有匹配的记录
full join会返回左表和右表中所有行,即使没有匹配记录,查询结果是left join和right join的并集
数据库连接查询
标签:执行 style 卡尔 res name nbsp color 内连接 sel