在codeigniter中列出给定日期范围内的记录

lskq00tm  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(303)

我有一个以varchar形式保存日期记录的数据库
我的数据库:

------------------------
| id | name |    date  |
------------------------
| 1 | Mark  |01-11-2020|
------------------------
| 2 | Mark  |01-06-2020|
------------------------
| 3 | Mark  |01-07-2020|
------------------------

日期格式为日-月-年
我有两个字符串变量:

var1: 01-05-2020
var2: 20-06-2020

当我在sql中输入这些变量时,我没有得到正确的结果

01-06-2020

我的密码是

$this->db->order_by('id', 'DESC');
    $this->db->where('date >=', '01-05-2020');
    $this->db->where('date <=', '20-06-2020');
    $query = $this->db->get('db');
    $data["records"] = $query->result();
kd3sttzy

kd3sttzy1#

你也需要转换你试图搜索的字符串

$this->db->order_by('id', 'DESC');
    $this->db->where("STR_TO_DATE(date,'%d-%m-%Y') >=", "STR_TO_DATE('01-05-2020','%d-%m-%Y')");
    $this->db->where("STR_TO_DATE(date,'%d-%m-%Y') <=", "STR_TO_DATE('20-06-2020','%d-%m-%Y')");
    $query = $this->db->get('db');
    $data["records"] = $query->result();

你会发现这把小提琴很有用

相关问题