表数据如下:
id name
1 aa;样板
2 bb
3 cc;样板
4 dd
5 ee求一个sql,要求返回所有数据,但是要判断name是否包含样板2字:
id name verify
1 aa;样板 true
2 bb false
3 cc;样板 true
4 dd false
5 ee false可以实现吗?
id name
1 aa;样板
2 bb
3 cc;样板
4 dd
5 ee求一个sql,要求返回所有数据,但是要判断name是否包含样板2字:
id name verify
1 aa;样板 true
2 bb false
3 cc;样板 true
4 dd false
5 ee false可以实现吗?
from tb
verify = case when charindex('样板',name) > 0 then 'true' else 'false' end
from ta
--1 aa;样板
--2 bb
--3 cc;样板
--4 dd
--5 ee create table tb(id int,name varchar(20))
insert into tb select 1,'aa;样板'
insert into tb select 2,'bb'
insert into tb select 3,'cc;样板'
insert into tb select 4,'dd'
insert into tb select 5,'ee'select id,name,col=case when charindex('样板',name)>0 then 'true' else 'false' end from tb
1 aa;样板 true
2 bb false
3 cc;样板 true
4 dd false
5 ee false
insert into tb values(1 , 'aa;样板' )
insert into tb values(2 , 'bb' )
insert into tb values(3 , 'cc;样板' )
insert into tb values(4 , 'dd' )
insert into tb values(5 , 'ee' )
goselect * , verify = case when name like '%样板%' then 'true' else 'flase' end from tb
--或者
select * , verify = case when charindex('样板' , name ) > 0 then 'true' else 'flase' end from tbdrop table tb/*
id name verify
----------- -------------------- ------
1 aa;样板 true
2 bb flase
3 cc;样板 true
4 dd flase
5 ee flase
*/
select *,case wheb charindex('样板',name) > 0 then 'true' else 'false' end as verify
from tb
from tab
select Id,name,(case when patindex('%样板%',name)>0 then 'true' else 'false' end ) as verify
from tab
select Id,name,(case when name like '%样板%' then 'true' else 'false' end ) as verify
from tab