我正在尝试创建一个报告,我们可以在其中查看课程完成日期和到期日期。这是我到目前为止所得到的:
SELECT u.firstname AS 'Firstname' , u.lastname AS 'Lastname', cat.name AS 'Organisation', c.fullname AS 'course',
DATE_FORMAT(FROM_UNIXTIME(p.timecompleted),'%Y-%m-%d') AS completed
FROM prefix_course_completions AS p
JOIN prefix_course_categories AS cat
JOIN prefix_course AS c ON p.course = c.id
JOIN prefix_user AS u ON p.userid = u.id
WHERE c.enablecompletion = 1
ORDER BY u.firstname
我正在尝试添加一个新列,其中'completed'列数据+ 365 =到期日期。我已经尝试了很多方法,比如DATE_ADD / DATEADD,但我仍然无法得到它。你能帮我么。我将不胜感激任何建议和帮助。
提前致谢
答案 0 :(得分:3)
这应该做你想要的:
DATE_FORMAT(DATE_ADD(FROM_UNIXTIME(p.timecompleted),
INTERVAL 1 YEAR), '%Y-%m-%d'
) AS expiration_date
如果您想要365天(因此闰年周围的事情已经消失),您可以使用INTERVAL 365 DAY
代替。