使用带有多个搜索字符串Codeigniter的FIND_IN_SET搜索逗号相关值

时间:2016-05-07 05:08:33

标签: php mysql codeigniter find-in-set

我正在使用FIND_IN_SET从数据库中获取类似的逗号相关值我​​面临的问题是,如果在字符串中我传递单个值它正在准确搜索但是如果我在字符串中发送多个值则无法搜索< / p>

$search  = "FIND_IN_SET('".$toteach."', level_whometoteach)";
$this->db->where($search);
        $query=$this->db->get();
        return $result = $query->result();

如果这里$ toteach = 5且在level_whometotech 5中存在,则搜索并给出结果但是,

$teach=5,6 and level_whometoteach contains 5,6 no value is returned 

我能说出正确的方法吗

1 个答案:

答案 0 :(得分:1)

好吧,FIND_IN_SET会检查以逗号分隔的各个值。在您的情况下,您应该使用IN子句。

尝试此查询。

    $search  = "level_whometoteach IN (".$toteach.")";
    $this->db->where($search);
    $query=$this->db->get();
    return $result = $query->result();