Mysql 如何在codeigniter中使用日期范围进行搜索
我尝试在“tgl_lapor”列中使用日期范围搜索数据,但仍然得到错误 这是我的模型Mysql 如何在codeigniter中使用日期范围进行搜索,mysql,codeigniter,Mysql,Codeigniter,我尝试在“tgl_lapor”列中使用日期范围搜索数据,但仍然得到错误 这是我的模型 function all($tgl_lapor,$id_tujuanlapor,$id_kategorilapor,$usergroup) { $this->db->select('*'); $this->db->from('lapor'); if($tgl_lapor!=""){ $thi
function all($tgl_lapor,$id_tujuanlapor,$id_kategorilapor,$usergroup) {
$this->db->select('*');
$this->db->from('lapor');
if($tgl_lapor!=""){
$this->db->where("('tgl_lapor >=' ,$tgl_lapor) AND ('tgl_lapor <=' ,$tgl_lapor)");
}
这就是我的看法
<th>
<input type="text" class="form-control" name="tgl_lapor" placeholder="From">
</th>
<th>
<input type="text" class="form-control" name="tgl_lapor" placeholder="To">
</th>
我得到了错误
Error Number: 1241
Operand should contain 1 column(s)
SELECT * FROM (`lapor`) WHERE ('tgl_lapor >=' ,2015-01-24) AND ('tgl_lapor <=' ,2015-01-24)
Filename: D:\xampp\htdocs\zz\system\database\DB_driver.php
Line Number: 330
错误号:1241
操作数应包含1列
从(`lapor`)中选择*,其中('tgl_lapor>=',2015-01-24)和('tgl_lapor于2015-02-26更新:
嗨
我的猜测是你需要把这个范围分成两个变量
控制器
public function index() {
$tgl_lapor_from = $this->input->get('tgl_lapor_from');
$tgl_lapor_to = $this->input->get('tgl_lapor_to');
...
}
看法
…否则,查询将永远不会触及tgl_lapor列。毕竟,您正在尝试绑定两个不同的值(因为它是一个范围)。但我使用tgl_lapor来显示该列中的数据,您需要小心阅读错误消息。选择*from(lapor
)WHERE('tgl_lapor>=',2015-01-24)和('tgl_lapor yes:D当我尝试你的答案时,错误变成了:'SELECT*FROM(lapor
),其中('tgl_lapor>=',2015-01-24)和('tgl_lapor',这让我相信你可能正在寻找另一种方法来比较MySQL查询中的日期类型。SELECT*FROM(
lapor),其中'tgl_lapor'介于“2015-01-25”和“2015-02-25”
是的,你说得对。我只是尝试添加$tgl\u lapor\u from和$tgl\u lapor\u to,而不删除$tgl\u lapor\u。然后显示错误
public function index() {
$tgl_lapor_from = $this->input->get('tgl_lapor_from');
$tgl_lapor_to = $this->input->get('tgl_lapor_to');
...
}
<th>
<input type="text" class="form-control" name="tgl_lapor_from" placeholder="From">
</th>
<th>
<input type="text" class="form-control" name="tgl_lapor_to" placeholder="To">
</th>
function all($tgl_lapor_from, $tgl_lapor_to, $id_tujuanlapor, $id_kategorilapor, $usergroup){
$this->db->select('*');
$this->db->from('lapor');
if($tgl_lapor_from!="" && $tgl_lapor_to!=""){
$query = 'tgl_lapor BETWEEN "$tgl_lapor_from" AND "$tgl_lapor_to"';
$this->db->where($query);
}
}