Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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中的日期_Mysql_Sql_Comparison - Fatal编程技术网

比较MySQL中的日期

比较MySQL中的日期,mysql,sql,comparison,Mysql,Sql,Comparison,我想比较两个给定日期之间的数据库中的日期。 数据库中的列是DATETIME,我只想将其与date格式进行比较,而不是与DATETIME格式进行比较 SELECT * FROM `players` WHERE CONVERT(CHAR(10),us_reg_date,120) >= '2000-07-05' AND CONVERT(CHAR(10),us_reg_date,120) <= '2011-11-10' 从'players'中选择*,其中CONVERT(字符(10),美国注

我想比较两个给定日期之间的数据库中的日期。 数据库中的列是DATETIME,我只想将其与date格式进行比较,而不是与DATETIME格式进行比较

SELECT * FROM `players` WHERE CONVERT(CHAR(10),us_reg_date,120) >= '2000-07-05' AND CONVERT(CHAR(10),us_reg_date,120) <= '2011-11-10'
从'players'中选择*,其中CONVERT(字符(10),美国注册日期,120)>='2000-07-05'和CONVERT(字符(10),美国注册日期,120)用于将日期转换为字符串。在MySQL中,您可以使用函数从日期时间中提取日期:

SELECT *
FROM players
WHERE DATE(us_reg_date) BETWEEN '2000-07-05' AND '2011-11-10'
但是,如果您想利用列
us\u reg\u date
上的索引,您可能需要尝试以下方法:

SELECT *
FROM players
WHERE us_reg_date >= '2000-07-05'
  AND us_reg_date < '2011-11-10' + interval 1 day
选择*
来自玩家
其中美国注册日期>='2000-07-05'
美国注册日期<'2011-11-10'+间隔1天

您可以尝试下面的查询

select * from players
where 
    us_reg_date between '2000-07-05'
and
    DATE_ADD('2011-11-10',INTERVAL 1 DAY)
这对我很有用:

select date_format(date(starttime),'%Y-%m-%d') from data
where date(starttime) >= date '2012-11-02';
请注意格式字符串“%Y-%m-%d”和输入日期的格式。

我得到了答案

代码如下:

SELECT * FROM table
WHERE STR_TO_DATE(column, '%d/%m/%Y')
  BETWEEN STR_TO_DATE('29/01/15', '%d/%m/%Y')
    AND STR_TO_DATE('07/10/15', '%d/%m/%Y')

这就是它对我的作用:

select * from table
where column
BETWEEN STR_TO_DATE('29/01/15', '%d/%m/%Y')
 AND STR_TO_DATE('07/10/15', '%d/%m/%Y')

请注意,我必须从以前的解决方案中将STR_更改为_DATE(列,'%d/%m/%Y'),因为从google提交的人需要花费很长时间才能加载

:mysql中的日期类型是yyyy-mm-dd格式。我感谢您考虑利用该索引。我认为查询不应该有“+间隔1天”子句。