如何在 MySQL 上获取两个日期之间相差的天数?

How to get the number of days of difference between two dates on MySQL?(如何在 MySQL 上获取两个日期之间相差的天数?)
本文介绍了如何在 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.

这篇关于如何在 MySQL 上获取两个日期之间相差的天数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Simulating MySQL#39;s ORDER BY FIELD() in Postgresql(在 Postgresql 中模拟 MySQL 的 ORDER BY FIELD())
Using MySQL query to traverse rows to make a recursive tree(使用MySQL查询遍历行制作递归树)
MySQL LOAD DATA INFILE with ON DUPLICATE KEY UPDATE(MySQL LOAD DATA INFILE 和 ON DUPLICATE KEY UPDATE)
Search for quot;whole word matchquot; in MySQL(搜索“全字匹配在 MySQL 中)
add column to mysql table if it does not exist(如果不存在,则将列添加到 mysql 表)
MIN/MAX vs ORDER BY and LIMIT(MIN/MAX 与 ORDER BY 和 LIMIT)