+ -
当前位置:首页 → 问答吧 → 查询数据的问题

查询数据的问题

时间:2011-09-22

来源:互联网

RY:
我有一列数据是这样 1,2,3,4,5,6  
如何判断我有其中1个数字就把该条记录查询出来

比如数据1,2|1,3|2,3|2 这些数据都是符合条件的。该记录都会被查询出来

作者: yao970953039   发布时间: 2011-09-22

select * from tt where concat(',',f1,',') regexp concat(',',replace('1,2,3,4,5,6',',',',|,'),',')

作者: wwwwb   发布时间: 2011-09-22

没搞明白,是判断有数字“1”? 是以逗号为分隔符吗?

作者: wfevgch   发布时间: 2011-09-22

有123456任何一个都行,当然,有多个数字则是以逗号分隔开

作者: yao970953039   发布时间: 2011-09-22

select * from table1 where find_in_set (1,col1 )

作者: ACMAIN_CHM   发布时间: 2011-09-22

请问ACMAIN_CHM
如果我find_in_set('1,2' col1 )是这样的 该如何查询数据?

我第一列并不一定是一个数字,有可能是多个,多个数字以逗号分隔,最后一个数字后面不跟逗号

作者: yao970953039   发布时间: 2011-09-22

1,2 代表什么? 有数字1或者数字2? 还是必须有1和2同时?

如果是或 则可以

where col1 regexit '1|2'

如果是与 则

where find_in_set(1,col1) and find_in_set(2,col1)

作者: ACMAIN_CHM   发布时间: 2011-09-22

是或的关系,出现其中一个数字即可,比如信息

ID TITLE
1 1,2
2 2
3 3,5
4 3,4,5
5 4


我查询TITLE中出现3的,则ID 3 4应该被查询出来。
我查询TITLE中出现2的,则ID 1 2应该被查询出来。

作者: yao970953039   发布时间: 2011-09-22

只查询1个可用FIDN_IN_SET,多个可用用1楼的正则
select * from tt where concat(',',f1,',') regexp concat(',',replace('1,2,3,4,5,6',',',',|,'),',')

作者: wwwwb   发布时间: 2011-09-22

谢谢wwwwb兄。。

作者: yao970953039   发布时间: 2011-09-22

相关阅读 更多

热门下载

更多