我想在数组中搜索数据。如何使用mysql select命令进行搜索。我把查询写成
$this->db->query("SELECT * FROM client_details WHERE dob IN ({implode(',', $data})");
$ data是一系列日期。请帮我解决这个问题..
答案 0 :(得分:2)
尝试
$data =array('0'=>'2015-01-23','1'=>'2015-01-22','2'=>'2015-01-21');
$tmp = implode('","', $data);
$tmp ='"'.$tmp.'"';
$sql= 'SELECT * FROM client_details WHERE dob IN ('.$tmp.')';
echo $sql;
$this->db->query($sql);
答案 1 :(得分:0)
您可以这样做:
选项1
$tmp = implode(',', $data);
$this->db->query("SELECT * FROM client_details WHERE dob IN ($tmp)");
选项2
$this->db->query("SELECT * FROM client_details WHERE dob IN (".implode(',', $data).")");
此外,您的bracket formation
还有一个错误。
它应该是dob IN ({implode(',', $data)}");
[在右括号后应该关闭大括号]。