如何在 MySQL 上获取两个日期之间相差的天数?
我需要获取 MySQL 上几个日期中包含的天数.
I need to get the number of days contained within a couple of dates on MySQL.
例如:
- 入住日期是
12-04-2010
- 退房日期
15-04-2010
日差为 3.
推荐答案
DATEDIFF 函数?
What about the DATEDIFF function ?
引用手册页:
DATEDIFF() 返回 expr1 – expr2表示为从一开始的天数约会到另一个.expr1 和 expr2是日期或日期和时间表达式.只有值的日期部分是用于计算
DATEDIFF() returns expr1 – expr2 expressed as a value in days from one date to the other. expr1 and expr2 are date or date-and-time expressions. Only the date parts of the values are used in the calculation
在你的情况下,你会使用:
In your case, you'd use :
mysql> select datediff('2010-04-15', '2010-04-12');
+--------------------------------------+
| datediff('2010-04-15', '2010-04-12') |
+--------------------------------------+
| 3 |
+--------------------------------------+
1 row in set (0,00 sec)
但请注意,日期应写为YYYY-MM-DD
,而不是像您发布的那样DD-MM-YYYY
.
But note the dates should be written as YYYY-MM-DD
, and not DD-MM-YYYY
like you posted.
相关文章