1. 首页 > 科技

where后边用case when,数据大了会不会数据库卡死啊?

where后边用case when,数据大了会不会数据库卡死啊?

能不能在Where 后面用Case when 语句

能不能在Where 后面用Case when 语句

你应该这样写 select * from 表 where 1=1 and (case when a=1 then a when 表.字段='asdfasdf' then b end)='值

sql中where后面用case的问题

set @bzdw = isnull(@bzdw,’')

where <其他条件 and>

(@wldw=‘’ or @wldw = wldw)

可以在where后使用case when吗

报错语句

select *

from A, B

where B.name in

CASE

when A.id = 0 then ('aaa', 'bbb')

when A.id = 1 then ('bbb', 'ccc')

when A.id = 2 then ('ccc', 'ddd')

END

正确写法:将B.name in 放到CASE END 中

select *

from A, B

where

CASE

when A.id = 0 then B.name in ('aaa', 'bbb')

when A.id = 1 then B.name in ('bbb', 'ccc')

when A.id = 2 then B.name in ('ccc', 'ddd')

END

sql server 的 case when 能写在where 后面吗?不能的话用什么代替?

select id,age,case id when '1' then 'aaa' when '2' then 'bbb' else NULL end from test;

这是一个使用case when then的句子,其中id是一个字段,test是表明

其实where后用也行,例句

SELECT * FROM CUSTOMERS WHERE

DEPT_CODE = (CASE @ZTYPE WHEN 1 THEN @ZVALUE ELSE DEPT_CODE END)

AND

CITY = (CASE @ZTYPE WHEN 2 THEN @ZVALUE ELSE CITY END)