sql语句调优和一个小问题需要大家帮忙解决
select sno,sname,sdept
from student
where sdept in
(
select sdept
from student
where sname='ccf'
);
-----------------------------2
select sno,sname,sdept
from student
where sdept =
(
select sdept
from student
where sname='ccf'
);
------------------------------3
select sno,sname,sdept
from student s1
where exist
(
select from student s2
where s2.sdept=s1.sdept and s2.name='ccf'
);
这三个sql语句那个效率会更高一些?
还有sql语句后面使用分号结束吗?
------解决方案--------------------实际执行看效果。自己分析。
第二种子查询内返回不止一个值时,报错。
------解决方案--------------------第二种写法很容易出错
第三种写法,楼主上面语句不对
至于in和exists效率,说法不一,一是看楼主如何用语句,二是看数据库引擎优化结果