Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何使sql语句在两个日期之间显示?_Mysql_Date_Compare - Fatal编程技术网

Mysql 如何使sql语句在两个日期之间显示?

Mysql 如何使sql语句在两个日期之间显示?,mysql,date,compare,Mysql,Date,Compare,我有一个带有属性的表news,display\u start\u date和display\u end\u date 让我们假设我希望圣诞文章从12月10日开始,到12月25日结束,这就是我一直试图做到的: SELECT * FROM news WHERE display_start_date BETWEEN display_start_date AND display_end_date AND display_end_date > NOW() ORDER BY displ

我有一个带有属性的表
news
display\u start\u date
display\u end\u date

让我们假设我希望圣诞文章从12月10日开始,到12月25日结束,这就是我一直试图做到的:

SELECT * 
FROM news 
WHERE display_start_date BETWEEN display_start_date AND display_end_date   
  AND display_end_date > NOW() 
ORDER BY display_start_date DESC 
LIMIT $max;

假设你想要在2015-11-15 13:00:00到2015-11-20 13:00:00之间的文章,那么你会这样做:

SELECT * FROM news 
WHERE display_start_date BETWEEN ' 2015-11-15 13:00:00' AND  '2015-11-20 13:00:00'
AND display_end_date > NOW() 
ORDER BY display_start_date DESC LIMIT $max"; 
你应该提供中间论点的内容。因为显示开始日期和显示结束日期是表中的字段


数据库自动将字符串转换为日期

祝您万事如意谢谢
SELECT * FROM news 
WHERE display_start_date BETWEEN ' 2015-11-15 13:00:00' AND  '2015-11-20 13:00:00'
AND display_end_date > NOW() 
ORDER BY display_start_date DESC LIMIT $max";