我有一個db,它有多列,跟着「name_ *」的語法。基本上我想在查詢中使用UPDATE,以便它更新第一列,其值等於''。Mysql UPDATE第一列不等於''
我發現這個至今:
UPDATE table SET
`name_1` = CASE WHEN `name_1` = '' then 'something' else name_1 end,
`name_2` = CASE WHEN `name_2` = '' then 'something' else name_2 end,
`name_3` = CASE WHEN `name_3` = '' then 'something' else name_3 end
WHERE ID = '$id_example'
現在,這將是完美的,但它確實所有的人。我只想選擇第一個,在那裏它等於'',然後將剩下的設置爲之前的狀態。
這是我的第一個想法,但如果2個用戶同時登錄並且都有SELECT,則返回它爲空並執行UPDATES。一個用戶將覆蓋另一個用戶。 –
我看到了,你是否想說如果2個用戶登錄每個更新應該像先到先得更新或類似user1更新第一個記錄然後user2會更新第二個記錄? –
是的。然後,當整行被填滿時,它會插入一個新行,並讓所有其他列空白等待人填寫。 –