首页 > 解决方案 > 如何添加 DATEDIFF 和更新表?

问题描述

目前我正在练习DATEDIFF。以下是详细信息:

表 DB1:id、update_time、expire_time、total_diff

表 DB2:id、用户名

SELECT  db2.ID AS ID,
        updatetime.update_time AS Latest_Payment,
        expiretime.expire_time AS Payment_Till
FROM    db2
INNER JOIN db1 ON db2.ID = db1.user_id
LEFT JOIN db1 updatetime ON db2.ID = updatetime.user_id AND updatetime.update_time
LEFT JOIN db1 expiretime ON db2.ID = expiretime.user_id AND expiretime.expire_time
WHERE db2.id >= '0' AND expiretime.expire_time < NOW()
GROUP BY db2.ID;

我正在尝试添加DATEDIFF(month, CURRENT_TIMESTAMP, updatetime.update_time)到上面的代码中,但没有运气。

我要做的是显示一个包含以下内容的表格:

1. Latest Payment
2. Payment Till
3. Total Diff (How many months payment due)*$80

目前我只能显示“最新付款”和“付款截止”。我可以知道如何添加DATEDIFF并将其显示在 1 个表中吗?

我尝试实现的数据/表格示例:

Name     | Latest Payment (updatetime) | Subscribe Till (expiretime) | Month Due X $80

Arby     | 21/3/2020                   | 21/4/2020      | 80

Casi     | 21/2/2020                   | 21/5/2020      | 0

Will     | 21/2/2020                   | 21/4/2020      | 160

非常感谢您的帮助。

标签: sqlsql-serverdate-difference

解决方案


推荐阅读