1
我有这个疑问更新所有贷款WHERE user_id =?在CASE时DATEDIFF()> 0。错误1242和1093
Update loans set fine = case
when DATEDIFF((
(SELECT * from (SELECT loans.due_date FROM loans where users_id = 1) AS l1))
,DATE(NOW())) > 0 THEN 1
ELSE fine
END
WHERE users_id =1;
从表
+-------------+
| Field |
+-------------+
| users_id |
| books_isbn |
| aquire_date |
| due_date |
| fine |
+-------------+
这是一个与用户具有只是一个“贷款”的工作,但我不知道如何使它与几个工作一位用户的“贷款”。 =(
请解释的逻辑你想实施,样本数据和期望的结果是有帮助的非工作代码,更少如此 –
我想增加罚款,取决于过期的天数DATEDIFF *系数 然后1它只是为了测试 –