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

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

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

  1. ------------------------
  2. | id | name | date |
  3. ------------------------
  4. | 1 | Mark |01-11-2020|
  5. ------------------------
  6. | 2 | Mark |01-06-2020|
  7. ------------------------
  8. | 3 | Mark |01-07-2020|
  9. ------------------------

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

  1. var1: 01-05-2020
  2. var2: 20-06-2020

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

  1. 01-06-2020

我的密码是

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

kd3sttzy1#

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

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

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

相关问题