小编Rew*_*ind的帖子

多条件多更新

我们被告知要通过使用以下 IN 子句来注意设置为 null(我们不想要)的东西:

UPDATE Tests SET
     TestScore =
              CASE
                  WHEN TestId = 10 THEN 1000
                  WHEN TestId = 11 THEN 1100
              END,
     TestScore2 =
              CASE
                  WHEN TestId = 10 THEN 2000
                  WHEN TestId = 11 THEN 2100
              END
     WHERE TestId IN (10, 11)
Run Code Online (Sandbox Code Playgroud)

但是当需要两个条件时会发生什么,即 (TestId, TestSubId) 的联合组合?即,我如何对 IN 子句 ???,在下面显示它必须在组合 (10,25) 和 (11,22) 中:

UPDATE Tests SET
    TestScore = CASE
        WHEN (TestId = 10 AND TestSubId = 25) THEN 1000
        WHEN (TestId = 11 AND TestSubId = 22) THEN …
Run Code Online (Sandbox Code Playgroud)

mysql update

5
推荐指数
1
解决办法
3万
查看次数

标签 统计

mysql ×1

update ×1