请教:依条件选择更新字段怎么样写?

MySql 码拜 8年前 (2016-02-05) 983次浏览
表结构  points:

id   |    a     |      b     |     cDate

1    |   889  |   767   | 2016-05-23

2   |  376   |  384    | 2016-05-30
……
a 记录上周积分,b记录本周积分,cDate记录上次更新积分的日期
现在 id=1 的 cDate字段日期已经变成了上周WEEK(CURDATE()) > WEEK(CURDATE(cDate)),要把b字段积分更新到a字段,b字段积分更新为1
现在 id=2 的 cDate字段日期仍然是本周,a 字段积分不变,b字段积分  +1
讨教一下怎么样写 update 语句?
解决方案

40

update points
set a=if(WEEK(CURDATE()) > WEEK(CURDATE(cDate)),b,a),
b=if(WEEK(CURDATE()) > WEEK(CURDATE(cDate)),1,b+1)

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明请教:依条件选择更新字段怎么样写?
喜欢 (0)
[1034331897@qq.com]
分享 (0)