我几乎在这上面停留了几个小时,如果有人能提供帮助,我将不胜感激。
我正在对数据进行 mysql 搜索:
Row Id List Data
1 3,2,7,11
2 1,27
3 2,17,44
4 19,77
我的问题是我想进行严格搜索。
假设我想搜索上面数据中有“7”的行。
如果我这样做:
select id from table where list_data like '%7%'
显然会返回所有 4 行
我只想得到第一行作为我的结果。
我怎样才能做到这一点?
提前致谢:)
最佳答案
select id from table
where find_in_set(7, list_data) > 0
顺便说一句,您应该规范化数据以避免将来出现此类问题。请始终在一列中仅存储 1 个值,而不是多个。
关于php - 使用 mysql/php 进行严格搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18612675/