ANSI SQL-92 语法(内联接)
select e.empid,e.firstname,e.lastname,o.orderid
from employees e
join orders o
on e.empid=o.empid
ANSI SQL-89 语法(交叉联接)
select e.empid,e.firstname,e.lastname,o.orderid
from employees e, orders o
//没有where、on语句是交叉联接,有where、on语句是内联结; 但现在无法是有意忘记写where、on, 还是无意忘记写where、on
ANSI SQL-92 语法(交叉联接)
select e.empid,e.firstname,e.lastname,o.orderid
from employees e
cross join orders o
如果使用ANSI SQL-89语句时,忘记指定联接条件,那么得到的查询仍然是有效的,但执行的是一个交叉查询,因为查询没有失败,所以可能一时无法发现语句中隐藏着的逻辑错误,最终导致用户在使用程序时得到的可能是错误的结果.
本文详细介绍了ANSI SQL标准下的不同联接类型,包括内联接和交叉联接,并通过具体的SQL语句展示了如何在实际应用中正确使用这些联接方式。文章强调了忘记指定联接条件可能导致的逻辑错误及后果。
1111

被折叠的 条评论
为什么被折叠?



