作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用广告预订系统,而不是我自己构建的。对于广告表中的每一行,可以有多种尺寸。每个尺寸都是另一个表的引用 ID。没关系。
但它是这样存储的(当我写空格时,那是一个实际的空格):
1(空格)(空格)(空格)12(空格)
1(空格)(空格)(空格)(空格)(空格)
2(空格)(空格)25(空格)1
看起来像这样:
1 12
1
2 25 1
所以,当然,当我执行这样的查询时:
$this->db->get_where('online_ads', array('submitted >=' => '1314887098', 'submitted <=' => '1317673118', 'size' => '1'));
我得到了任何带有 1 的东西。我试过这个:
$this->db->like('size', '1')->get_where('online_ads', array('submitted >=' => '1314887098', 'submitted <=' => '1317673118'));
但它仍然没有给我准确的结果。我也尝试过 FIND_IN_SET 但这只适用于逗号。
如何找出存储了多少个 1、多少个 2、多少个 12 等,而不给我任何包含 1 或 2 的内容?
最佳答案
我认为您必须使用更高级的模式匹配,例如 regexp 。如果你只想要以“1”开头的东西,我认为像 RLIKE "^1 "
这样的东西应该可以工作。
关于php - 由于某人输入数据的方式很奇怪,无法生成准确的结果 (1 12 13),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8792987/
我是一名优秀的程序员,十分优秀!