感觉union用的有点多,不知道会不会影响效率。一点美感都没有,请教大神们有没有别的写法?

已知serviceType在1,2,3三个数字之间,我想知道deptId=1的时候,servicetype中没有出现在1,2,3的数字。一番波折后写出这样的语句:
select 1 union select 2 union select 3 EXCEPT SELECT serviceType FROM request WHERE deptId = 1;

萧十郎
浏览 238回答 2
2回答

倚天杖

可以用not in或者not exist关键字,如果都是整型的值也可以这样select serviceType from request where deptId=1 and ( serviceType > 3 or serviceType < 0 )

holdtom

where deptId=1 and servicetype not in(1,2,3)
打开App,查看更多内容
随时随地看视频慕课网APP