0
這是MySQL,它抱怨if語句。也許有人看到的錯誤,因爲我覺得我看着它太長:mySQL IF語句語法
SELECT c.id AS id, (p.validFor * 30) AS validFor, p.validFrom as validFrom,
date(FROM_UNIXTIME(rr.timemodified)) as date,
(CASE
WHEN date(validFrom) < date(FROM_UNIXTIME(rr.timemodified)) THEN (DATEDIFF(DATE_ADD(FROM_UNIXTIME(rr.timemodified), INTERVAL p.validFor MONTH) , NOW()))
WHEN date(validFrom) > date(FROM_UNIXTIME(rr.timemodified)) THEN (DATEDIFF(DATE_ADD(validFrom, INTERVAL p.validFor MONTH) , NOW()))
END)AS daysLeft,
IF (rr.timemodified < g.timemodified, (DATEDIFF(DATE_ADD(FROM_UNIXTIME(g.timemodified), INTERVAL p.validFor MONTH) , NOW())- (validFor * 30.48))) as daysLeft
FROM mdl_readtickbox_responses rr
JOIN mdl_readtickbox r ON r.id = rr.readtickboxid
JOIN mdl_course c ON c.id = r.course
JOIN mdl_procedures p ON p.id = c.idnumber
JOIN mdl_groups_members gm ON gm.userid = rr.userid
JOIN mdl_groups g ON g.id = gm.groupid
WHERE rr.userid = '2'
AND g.courseid = r.course
AND p.status != 'obsolete'
ORDER BY p.priority, daysLeft
謝謝:)完全忘了:) – Erika
歡迎你:)!如果它解決了你的問題,請確保接受解答 –