大于和小于我的sql

时间:2016-01-20 09:40:03

标签: php codeigniter mysqli

我需要从2016-01-19到2016-01-21获取数据,包括日期。所以我使用这样的查询

"SELECT * FROM events WHERE start_date <= '2016-01-21%' AND start_date >= '2016-01-19%'"

但我只获得了2016-01-19,2016-01-20数据,而不是2016-01-21.如果该查询中有任何错误。请分享答案。

4 个答案:

答案 0 :(得分:2)

使用between

SELECT * 
FROM events 
WHERE start_date BETWEEN date(2016-01-21 00:00:00) AND date(2016-01-19 23:59:59);

答案 1 :(得分:1)

尝试将betweendate功能

一起使用
SELECT * FROM events WHERE start_date BETWEEN date(2016-01-21) AND date(2016-01-19)
                                          ^          ^                   ^

答案 2 :(得分:0)

首先请确保“start_date”的数据库提交类型 datetime ,我们还需要格式化日期时间

尝试运行此

SELECT * FROM events WHERE ( DATE_FORMAT( start_date,  '%Y-%m-%d' ) >= '2016-01-19' AND DATE_FORMAT( start_date,  '%Y-%m-%d' ) <= '2016-01-21' ) 

答案 3 :(得分:0)

您可以使用BETWEEN,但在使用时请记住,第一个日期必须小于第二个日期。对不起,第一个答案是相反的。

  SELECT * 
  FROM events 
  WHERE start_date 
  BETWEEN  date(2016-01-19 00:00:00)
  AND   date(2016-01-21 23:59:59)
相关问题