比如说 SELECT * FROM TABLE1 JOIN TABLE2 ON TABLE1.CON1=TABLE2.CON2 和 SELECT * FROM TABLE1,TABLE2 WHERE TABLE1.CON1=TABLE2.CON2 有神马区别啊... 看了半个月SQL,这考四级了,不清楚是咋回事... 好吧,我知道如果select*是有区别的,但是比如选择的是table1.col1,两者的作用也是一样的么?
慕哥9229398
浏览 734回答 2
2回答
猛跑小猪
第一条SQL在WHERE子句中使用的连接语句,在数据库语言中,被称为隐性连接。第二条INNER JOIN……ON子句产生的连接称为显性连接。(其他JOIN参数也是显性连接,如Left join, Right Join, Full Join等)WHERE 和INNER JOIN产生的连接关系,没有本质区别,结果也一样。但是!隐性连接随着数据库语言的规范和发展,已经逐渐被淘汰,比较新的数据库语言基本上已经抛弃了隐性连接,全部采用显性连接了。