我用下面的查詢來更新我的用戶表在MySQL中一個條件的SQL查詢的基地2列如何更新
update users set user_likes =
(CASE WHEN like_by_users NOT LIKE '%user_name%'
AND dislikes_by_users NOT LIKE '%user_name%'
THEN (user_likes +1) ELSE user_likes END)
WHERE post_id = '2221'
這工作對我很好,但我也想更新likes_by_users這樣
likes_by_users = CONCAT(likes_by_users,' ','user_name')
我試圖做這樣的
update users set user_likes =
(CASE WHEN like_by_users NOT LIKE '%user_name%'
AND dislikes_by_users NOT LIKE '%user_name%'
THEN (user_likes +1), likes_by_users = CONCAT(likes_by_users,' ','user_name')
ELSE user_likes END)
WHERE post_id = '2221'
不過,這並不在所有的工作。 我不想再次檢查條件,但如果上述條件爲真,那麼它不僅應該更新兩列(user_likes)和(likes_by_users)(user_likes),並且如果條件爲false,那麼它不應該更新任何列。
我只需要在一個記錄應用此。我更新了我的問題。你可以現在檢查一下,並對我的問題有更簡單的瞭解。 – 2013-02-28 11:07:32
只需添加帖子的ID,它不會那麼難。 – silkfire 2013-02-28 11:22:52
這真的很棒。感謝這個查詢解決方案。 – 2013-02-28 13:07:56