我已经在这个阶段困了一个小时了。
我的目的是使用表tag_name
进行搜索,如果在tag_name
中给出no_result,我想使用具有类似条件的产品名称表。或者我可以从上面两个条件中得到结果。
谢谢你的好意:
function search_products($searchStr)
{
$this->db->select('a.*, b.,c.*,c.id as id_product',FALSE);
$this->db->from('tags_events a ',FALSE);
$this->db->join('products b','a.product_id = b.id ',FALSE);
$this->db->join('products_details c', 'b.id = c.product_id', 'left');
$this->db->where("MATCH (tag_name) AGAINST ('{$searchStr}')OR b.product_name LIKE '%$searchStr%' ", NULL, FALSE);
$this->db->group_by("b.product_name");
$query=$this->db->get();
return $query;
}
我认为你的问题将解决,如果你使用mysql 模式匹配
MySQL提供标准的SQL模式匹配以及一种基于扩展正则表达式的模式匹配形式,类似于Unix实用程序(如vi、grep和sed)所使用的模式匹配。
如果你需要详细解释,你可以访问这个链接:http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html