求一SQL,关于include

zq_hj_huang 2007-10-18 06:07:49

有一表结构:
编号 指定人 时间
id assign time
记录 001 test ..
002 test,test1 ...
003 test1,test2 ...


现在想从中选出指定人(assign)包含test值的记录,即想选出001和002记录来,这个sql 的条件怎么写,请大虾赐教,谢谢!

select * from dtl where ...... ?
...全文
99 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zq_hj_huang 2007-10-24
  • 打赏
  • 举报
回复

我用的是Oracle数据库,为什么用不了contains 和 charindex 运算符

只有
select * from dtl
where assign = 'test ' or assign like 'test,% ' or assign like '%,test ' or assign like '%,test,% '
语句是对的

找到答案就行,谢谢楼上几位
lass_name 2007-10-19
  • 打赏
  • 举报
回复
select * from tb where
contains(assign,'test') or contains(assign,',test') or contains(assign,'test,')
dawugui 2007-10-19
  • 打赏
  • 举报
回复
create table tb( 编号 varchar(10),指定人 varchar(20),时间 datetime)
insert into tb values('001','test',null)
insert into tb values('002','test,test1',null)
insert into tb values('003','test1,test2',null)
go
--方法一:
select * from tb where ','+指定人+',' like '%,test,%'
/*
编号 指定人 时间
---------- -------------------- ------------------------------------------------------
001 test NULL
002 test,test1 NULL

(所影响的行数为 2 行)
*/
--方法二:
select * from tb where charindex(',test,' , ','+指定人+',') > 0
/*
编号 指定人 时间
---------- -------------------- ------------------------------------------------------
001 test NULL
002 test,test1 NULL

(所影响的行数为 2 行)
*/
drop table tb
dawugui 2007-10-19
  • 打赏
  • 举报
回复
有一表结构: 
编号 指定人 时间
id assign time
记录 001 test ..
002 test,test1 ...
003 test1,test2 ...

方法一:
select * from tb where ','+指定人+',' like '%,test,%'

方法二:
select * from tb where charindex(',test,' , ','+指定人+',') > 0

yxh198358 2007-10-19
  • 打赏
  • 举报
回复
同意楼上的
pt1314917 2007-10-19
  • 打赏
  • 举报
回复

select * from dtl where charindex(','+'test'+',' , ','+assign+',')>0
hotyi2003 2007-10-18
  • 打赏
  • 举报
回复
select * from dtl
where assign = 'test' or assign like 'test,%' or assign like '%,test' or assign like '%,test,%'

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧