一个字段有多个值,搜索问题

时间:2021-09-13 15:08:20
数据库中有一个字段:NO_NUM 

数据库记录中该字段的值分别为 

1,5,6,2,8

1,3,2,4,8

7,5,6,9,2

2,7,6,4,9

怎么把记录中NO_NUM的值包含2的都搜索出来?

望高手给点提示,或者代码说明思路

谢谢

10 个解决方案

#1


用split函数把含有2的值判断一下

#2


select * from tb1 where ','+NO_NUM +',' like '%,2,%'

#3


select * from 表名 where NO_NUM like %2%

#4


数据不是很规整,like应该有3个,分别是 '2,%' '%,2,%' '%,2'
%2%千万不能用,用了会连20,32,200这类的也翻出来

#5


用split,给点代码提示可以吗?

%2%,不适合的,我这只是举例,其实需要搜索的是定单号,如235689556,这个号的数据记录

#6


不管怎么样,你得先打开数据库,然后再根据if的判断结果看是否需要输出数据到页面
myword=split(数据库里的字段,",")
for i = 0 to ubound(myword)
if mykeyword=myword(i) then'如果split出来的数组元素中,有跟查询关键字一样的就输出否则不输入
response.write 你想显示的数据库里的字段
end if
next

#7


不过,以上方法要查询N次数据库...
开始查询的时候,先用like查询,然后再用split进行筛选,判断是否应该输出到页面吧~

或许有更好的方法......

#8


如果数据库是sql server
可以用:
select * from dbo.jobs where CHARINDEX('2',NO_NUM )!=0

#9


是Access数据库

#10


怀疑楼主的判断力..jacklinchen(陈)这个不是最好的???

 jacklinchen(陈) ( ) 信誉:94    Blog   加为好友  2007-4-16 11:31:28  得分: 1     
select * from tb1 where ','+NO_NUM +',' like '%,2,%'

  
 

#1


用split函数把含有2的值判断一下

#2


select * from tb1 where ','+NO_NUM +',' like '%,2,%'

#3


select * from 表名 where NO_NUM like %2%

#4


数据不是很规整,like应该有3个,分别是 '2,%' '%,2,%' '%,2'
%2%千万不能用,用了会连20,32,200这类的也翻出来

#5


用split,给点代码提示可以吗?

%2%,不适合的,我这只是举例,其实需要搜索的是定单号,如235689556,这个号的数据记录

#6


不管怎么样,你得先打开数据库,然后再根据if的判断结果看是否需要输出数据到页面
myword=split(数据库里的字段,",")
for i = 0 to ubound(myword)
if mykeyword=myword(i) then'如果split出来的数组元素中,有跟查询关键字一样的就输出否则不输入
response.write 你想显示的数据库里的字段
end if
next

#7


不过,以上方法要查询N次数据库...
开始查询的时候,先用like查询,然后再用split进行筛选,判断是否应该输出到页面吧~

或许有更好的方法......

#8


如果数据库是sql server
可以用:
select * from dbo.jobs where CHARINDEX('2',NO_NUM )!=0

#9


是Access数据库

#10


怀疑楼主的判断力..jacklinchen(陈)这个不是最好的???

 jacklinchen(陈) ( ) 信誉:94    Blog   加为好友  2007-4-16 11:31:28  得分: 1     
select * from tb1 where ','+NO_NUM +',' like '%,2,%'