关注。case when 这块还是别用exists为好
解决方案 »
- 在线等!!!!急用
- 在线,问条语句(高难度)100分
- <<<<<<<<<<<<<<<<<<<请问关于raid5上分区表的问题
- 将数据库某个长字段按指定字符分成几个字段
- ▲▲▲对多表关联查询时,有空表存在,请问如何用SQL完成查询,可返回空值。请给出例程。谢谢!
- attach两个数据库文件总是出错,急!急!急!在线等待?
- 在一个时间段内的间隔查询
- 在SQL SERVER 中如何通过SQL文往已经定义的表中追加字段,并指定该字段在表中的位置(默认时新追加的字段会放在表中的最后)
- 关于安装sql server 2k sp3的问题??急
- SQLSERVER中nvarchar和varchar类型的区别是什么?
- 数据库筛选S0S
- 【请求帮助】一个SQL SERVER的字符窜拆分问题
case when (EXISTS(SELECT * FROM planadmin,t where
planadmin.file_ not in ('陕计投资[2000] 1085号','陕计投资[2001] 148号','陕计投资[2001] 983号','陕计投资[2002] 229号','陕计投资[2002] 596号','陕计投资[2002] 914号','陕计投资[2002] 1176号','陕计投资[2003] 741号','陕计投资[2004] 234号','陕计投资[2004] 441号','陕发改投资[2004] 777号')
and charindex(t.F27,'、'+planadmin.retwo+'、')>0 and t.F7 is not null))
then 1 else 0 end as keyid, case when (EXISTS(SELECT * FROM planadmin,t where
planadmin.file_ not in ('陕计投资[2000] 1085号','陕计投资[2001] 148号','陕计投资[2001] 983号','陕计投资[2002] 229号','陕计投资[2002] 596号','陕计投资[2002] 914号','陕计投资[2002] 1176号','陕计投资[2003] 741号','陕计投资[2004] 234号','陕计投资[2004] 441号','陕发改投资[2004] 777号')
and charindex(t.F27,'、'+planadmin.retwo+'、')>0 and t.F7 <planadmin.watersupply_population ) and t.F7 is not null))
then 1 else 0 end as keyid1
FROM t where t.F7 is not null order by t.city_name 解释一下,就是当遇到case when这种情况,如果满足charindex(t.F27,'、'+planadmin.retwo+'、')>0 and t.F7 is not null条件时,给keyid赋值,在此基础上,如果多加一个条件t.F7 <planadmin.watersupply_population ,然后给keyid1赋值,应怎样优化sql语句,尽量提高其效率和准确性,望指教
把条件加到where字句后面去吧!