2016-11-08 67 views
1

下面是使用破灭功能我的正常的SQL查询:笨查询设计器where_in

SELECT * from search_result WHERE skills IN ('".implode("','",$s_id)."'); 

现在我想将其转换为笨形式。我试着下面的代码,但它无法

$this->db->from('search_result'); 
$this->db->where_in('skills','".implode("','",$s_id)."'); 
$query = $this->db->get(); 

这里是我的$s_id数组:

Array ([0] => 2D Design [1] => 3D Design [2] => 3D Modelling) 

所以请人帮我做这件事。感谢提前:)

+0

通'$ s_id'作为数组 –

+0

@AbdullaNilam可以显示一个例子,请.. – Shihas

+1

加上' $ s_id'值 –

回答

2

官方文件说的

$names = array('Frank', 'Todd', 'James'); # Data Array 
$this->db->where_in('username', $names); # passing array 

尝试像下面

方法01推荐

$this->db->from('search_result'); 
$this->db->where_in('skills',$s_id); 
$query = $this->db->get(); 

方法02

$this->db->from('search_result'); 
$this->db->where_in('skills',implode("','",$s_id)); 
$query = $this->db->get(); 

哪些错误在这条线

$this->db->where_in('skills','".implode("','",$s_id)."'); 

'"报价包装功能。然后它会将字符串保存为数据库。


链接

  1. where_in clause in codeigniter.com
+0

的任何更新? –

+0

是的,它的工作原理。谢谢:) – Shihas

+0

高兴地帮助:) –

1

你可以只写:

$this->db->from('search_result'); 
$this->db->where_in('skills', $s_id); 
$query = $this->db->get(); 

Official doc

$ names = array('Frank','Todd','James');

$ this-> db-> where_in('username',$ names);

//产地:其中username IN( '弗兰克', '托德', '詹姆斯')