【发布时间】:2014-06-23 15:51:44
【问题描述】:
我已经完成了搜索,但我找到的所有内容都与我需要的方式相反。
我有一个数据库,其中一个字段是一串 ID,我想在数据库中已有的数组中搜索某个 ID。
例如,在数据库中它看起来像这样:
ID Title Spots Used
1 test 1 1,3,5,8
2 test 2 4,2,5,6,7
3 test 3 3,5,2,1
我需要搜索有多少广告系列使用了 ID 为 2 的位置(应该返回测试 2 和测试 3)。
解决此问题的最佳方法是什么?到目前为止,我可以查询整个事情,逐行运行,然后用strpos 搜索数字,但问题是当我最终上传超过 10 个点时,1 将返回 1、10、11 , 12, 13 等等。
如果我需要提供更多信息,请告诉我。
【问题讨论】:
-
像
SELECT * FROM campaigns WHERE 2 IN (Spots Used)什么的? -
标准化数据库,这将有很大帮助
-
那么,我可以在
IN子句中使用一个字段吗?在我读过的任何文档中,我都找不到。 -
@Fred-ii- 你看过数据了吗?他不是在尝试查找与值数组匹配的字段,而是在包含逗号分隔值列表的字段中查找值。
in不会成功。 -
我的错误@GolezTrol 感谢您指出这一点。评论已删除。
标签: php mysql sql arrays search