我来自Postgres / MySQL世界,所以我想知道SQL服务器中这两个查询之间是否存在差异:
SELECT e.employee_id, s.salary
FROM employees e INNER JOIN salaries s
ON e.employee_id = s.employee_id
SELECT e.employee_id, s.salary
FROM employees e, salaries s
WHERE e.employee_id = s.employee_id
答案 0 :(得分:3)
SQL-92引入了新的连接语法,SQL Server(至少早在SQL Server 2000)和大多数其他DBMS支持这些语法。性能方面,它们是等效的,但通常我建议新的SQL-92语法用于新代码。
答案 1 :(得分:1)
两者之间没有功能差异。后者(称为隐式连接)被认为是过时的,并且通常不赞成。
答案 2 :(得分:1)
这些应该做同样的事情。第一个是首选语法,因为它是一个显式连接,可以使您的代码更容易阅读!
答案 3 :(得分:0)