如何在sql中用太多的值编写类似的%查询?
例如,请参阅表格结构
Id Tid name
1 1 test
2 3 ram
3 10 felix
select * from table where Tid Like % 1,10 %
我也把这个值放在一个表单中,所以发布变量值如$_POST['tid']=1,10
所以我将实现这个
select * from table where Tid Like % $_POST['tid'] %
谢谢。
答案 0 :(得分:6)
MySQL提供find_in_set()
:
where find_in_set(Tid, '1,10') > 0
请注意,这不会使用索引。您可以在php中使用implode()
代替使用in
,从而产生:
where tid in (1, 10)