为什么在codeigniter中会发生这种情况?

pprl5pva  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(267)
$query1 = $this->db
    ->select('skill_description.description, count(staff_info.staffId) as experienced')
    ->from('skill_rating')
    ->join('staff_info','staff_info.staffId = skill_rating.staffId')
    ->join('skill_description','skill_rating.descriptionId = skill_description.descriptionId')
    ->where ('skill_rating.rating','2')
    ->group_by("skill_description.description")                       
    ->order_by("skill_description.description asc")
    ->get();

当我使用这个时,我得到了想要的结果。。但我一加上

->where_in ('skill_description.description',$array)

它产生一个空数组,它不应该这样做。它应该返回我认为相同的结果。如果我对同一个查询使用纯sql样式,它就可以工作了$数组包含所有描述。我该怎么办?

yzuktlbb

yzuktlbb1#

如果描述有字符串或文本数据类型,那么应该使用like。

$q = $this->db->select('*')
    ->from('table')
    ->where("(col LIKE '%".$search_string1."%' OR col LIKE '%".$search_string2."%' OR col LIKE '%".$search_string3."%' OR col LIKE '%".$search_string4."%')", NULL, FALSE)
    ->get()->results;

相关问题