我想更新我的MySQL
表。我想要做的是更新column1
,除非数据存在,column1
然后将它移到column2
并更新那个。我目前拥有的代码不断更新第一列。
UPDATE users
SET active = 1,
time_started = '$_POST[in_time]'
WHERE user_id = '$_POST[user_id]
有人可以帮忙吗?
就像是:
update users set active=1, time_in_1=if(time_started is null,time_in_1,?), time_started=if(time_started is null,?,time_started) while ...
实际上,当 time_started 为空时,上面的内容是:
update users set time_in_1=time_in_1, time_started=?
(保持 time_in_1 不变; ? 是新值的占位符)。如果 time_started 不为空,它会:
update users set time_in_1=?, time_started=time_started
(保持 time_started 不变)。在任何一种情况下,您都需要提供两次新值(假设只有一个;也许您希望将第二列更新为与将第一列更新为不同的值?)。