MySQL - 截断日期/时间并相互减少

时间:2013-03-06 20:39:36

标签: mysql

我有以下查询,从过期时间中减去原始购买时间,以便提出若干天:

select date(expires_dtime) - date(original_purchase_dtime)
from sl_player_subscription
where player_uuid = '9c61411c-54b4-45bd-8d07-264b1c2e4249'

player_uuid that = '9c61411c-54b4-45bd-8d07-264b1c2e4249'原始购买时间为2013-03-06 11:36:46,过期时间为2013-04-05 12:36:46.

我希望输出读取“30”,这是购买时间和到期时间之间的天数,而是输出为99.有任何建议吗?

1 个答案:

答案 0 :(得分:4)

您可以使用DATEDIFF

SELECT DATEDIFF('2013-04-05 12:36:46', '2013-03-06 11:36:46')

<强>结果

30

使用您的专栏:

SELECT DATEDIFF(expires_dtime, original_purchase_dtime)

See the demo

  

DATEDIFF()返回 expr1 - expr2 ,表示为从一个日期到另一个日期的天数值。 expr1 expr2 是日期或日期和时间表达式。在计算中仅使用值的日期部分。

Documentation: Date and Time functions