2016-09-24 97 views
1
select s.id,s.name,e.sem from student as s, enroll as e where s.id = e.id; 

select s.id,s.name,e.sem from student join enroll using (id); 

所以这两条语句得到的结果是一样的,但是有什么区别?有没有他们不一样的情况?这两条sql语句有什么区别

+3

没什么。他们解决相同的事情。第一个是where子句中的旧式连接。呸。第二个是现代加入的简短形式....第二个节省您的输入'on student.id = enroll.id' – Drew

+0

's.id = e.id'与'join'在这里的作用相同。差异是执行查询的风格。正如@德鲁所说,第一个是老式的另一个可以节省一些手指的痛苦:D:p – Vikrant

+0

感谢您的回答 – demalegabi

回答

0

他们是一样的东西,一个是旧的风格,而另一个节省了一些时间和打字。