【发布时间】:2016-06-06 08:15:16
【问题描述】:
当我将多个值传递给 $area 和 $keyword_whomtoteach 时,我有 2 列的值都带有逗号 keyword_whomtoteach 和 area_tutor 我没有得到正确的输出我正在使用这个查询
$toteach=1,5 $area=1,5
$search = "keyword_whomtoteach IN (".$toteach.")";
$where = "area_tutor IN (".$area.")";
$this->db->where($search);
$this->db->or_where($where);
$query=$this->db->get();
return $result = $query->result_array();
在这里我得到了正确的结果,但问题是我需要这样的东西 如果
id keyword_whomtoteach area_tutor
1 1,2,3,4,5 1,2
2 2,3,5 2,3
3 5,6,7 1,4
4 1,5,6 5,6
我想要一些东西,比如当我通过 $toteach=1 和 $area=1,5 时,我应该同时获得 id 1 和 4,因为它们都有 keyword_whometoteach=1,5
【问题讨论】:
-
我看过这个例子,但我无法解决@matt raines
-
为什么不能正确规范化数据?它将消除寻找复杂且低效的工作区的需要
-
没有样本数据、预期结果和实际收到的结果或错误信息,任何答案都只能是纯粹的猜测。
-
“解决问题”有两个选项.... 选项 #1 是正确规范您的数据库;选项 #2 是尝试笨拙和低效的工作区(例如 FIND_IN_SET())......但你永远不会获得良好的性能,并且除非你使用选项 #1,否则你的代码将总是过于复杂且难以维护
标签: php mysql codeigniter comma