外链接问题

来源:5-3 数据操作语言:子查询(二)

qq_Eden

2021-08-08 11:27:29

SELECT ename,deptno FROM t_emp e LEFT JOIN 

(SELECT deptno depton FROM t_emp WHERE ename IN("FORD","MARTIN")) t

WHERE e.deptno IN(t.depton) AND e.ename NOT IN("FORD","MARTIN");


内链接可以为什么外链接就会报错呢

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE e.deptno IN(t.depton) AND e.ename NOT IN("FORD","MARTIN")' at line 3, Time: 0.000000s


写回答

1回答

好帮手慕阿满

2021-08-08

同学你好,这里的where使用错误,在外连接中,where是在生成临时表之后使用的条件进行筛选。左表和右表没有关联条件,无法生成临时表,也就无法通过where进行查询。同学可以将where改为on,on的优先级比where高,on是在生成临时表的时候使用的条件,将on后边的内容作为条件对两张表进行关联查询。

祝学习愉快~

0

0 学习 · 9886 问题

查看课程