日期:2014-05-17  浏览次数:21207 次

sql中逗号是不是相当于笛卡尔积,另外逗号和join的关系,他们两个是不是一个概念。求高手!!
sql中逗号是不是相当于笛卡尔积,另外逗号和join的关系,他们两个是不是一个概念。求高手!!
例如: select * from a,b where a.id=b.id;这里的逗号是不是就相当于笛卡尔积?
select * from a join b on a.id= b.id;这里的join是不是和上面的逗号一样的意思?

------解决方案--------------------
SQL code
join 分左连接,右连接 ,全连接,不一样的!

------解决方案--------------------
当Join是全连接的时候和逗号一样,当为left join、right join的时候不是做笛卡尔积操作。
------解决方案--------------------
逗号 = inner join

和 全连接 full join 不一样
------解决方案--------------------
逗号 = inner join


------解决方案--------------------
探讨
sql中逗号是不是相当于笛卡尔积,另外逗号和join的关系,他们两个是不是一个概念。求高手!!
例如: select * from a,b where a.id=b.id;这里的逗号是不是就相当于笛卡尔积?
select * from a join b on a.id= b.id;这里的join是不是和上面的逗号一样的意思?

------解决方案--------------------
逗号与inner等同,即只查询两表条件均满足的数据。
left join,左表数据多于右表
right join,与left join相反
full join,即是left join和right join的并集