SQL 选择列 IF表达式,Contains表达式的用法

时间:2023-03-09 16:02:43
SQL 选择列 IF表达式,Contains表达式的用法

因为业务需要需要使用到, 列中的字段或根据列值是否满足某一条件,进行输出。比如类似与  select if()  ……from……;(但是SQL Server 没有 if 表达式)

比如,如果Score>60 且 Score<70 则输出合格,用case when ……then……else……end

如果是contains 条件,比如类似   select if(contains('aaa'))   …… from…… 则需要用 charindex 进行转化

接下来看看怎么达到  if 表达式效果:

熟悉一下case 用法

select case when  1>2 then '1大于2' else '1小于2' end;

输出   1小于2

charindex 用法(可以当作Contains 或like 用

-- 单个字符
select charindex('a','123ab123')
-- 字符串
select charindex('ab','123ab123')

然后结合起来就达到相应效果了

select case when charindex('a','123a123')>1 then 1 else 2 end;