MySQL检查字段中是否有数字

时间:2012-08-09 19:00:12

标签: mysql select comparison

我想在MySQL中做一个简单的比较测试,我有一个存储ID的字段就像这样:

1;2;23;12

或者,如果在创建该条目时仅选择了一个选项,则它只能是一个:

2

无论如何,我希望过滤我的选择查询以查找数据库中具有例如ID 2的条目。因此,我需要进行某种比较,将id 2与该列进行比较,并将这些值与可能的单值进行比较。

1 个答案:

答案 0 :(得分:3)

您正在寻找find_in_set功能:

Select 
   *
from 
   your_table
where 
   FIND_IN_SET('2',REPLACE( '1;2;23;12', ';' , ',' ) ) > 0

我建议你规范化数据库(参见:http://en.wikipedia.org/wiki/First_normal_form) 另外,请注意,此类查询的性能不高。