我的历史积分表如下
ID Points earn_date
1 10 2017-04-04
2 8 2017-04-01
3 12 2017-04-28
4 7 2017-05-16
5 9 2017-06-03
现在从 Earn_date 到今天,我想使用查询获取天数差异
首先我尝试了以下查询
SELECT *,earn_date - '2017-06-17' AS RemainDays FROM customer_earning
然后我尝试使用 DATEDIFF
函数但没有得到结果
我怎样才能得到当天的结果
我想要的输出是如果我通过了今天的日期,那么
ID Points earn_date Days
1 10 2017-04-04 74
2 8 2017-04-01 78
3 12 2017-04-28 50
4 7 2017-05-16 32
最佳答案
这没有达到你想要的效果?
SELECT ce.*, DATEDIFF('2017-06-17', ce.earn_date) AS RemainDays
FROM customer_earning ce;
根据问题中的信息,这应该计算剩余的天数。
您可以明确说明类型转换,但我怀疑这会产生影响:
SELECT ce.*,
DATEDIFF(DATE('2017-06-17'), DATE(ce.earn_date)) AS RemainDays
FROM customer_earning ce;
关于mysql - 我在查询中传递的日期与表的字段日期之间的天数差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44604855/