作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含大约 17 个字段的表。我需要在此表中执行频繁更新。但问题是每次我可能只更新几个字段。在这种情况下编写更新查询的最佳方法是什么?我正在寻找一个选项,其中的值只有在不为空时才会更新。
例如,我在数据库中有四个字段 Say A、B、C、D。用户更新 say D 的值。所有其他值保持不变。所以我想要一个更新查询,它只更新 D 的值,保持其他值不变。因此,如果我将 a、b 和 c 设置为 null,并将 d 设置为用户提供的值,我想编写一个更新查询,它只将 d 的值更新为 a、b 和 c 为 null。MsSQL 2012 是我的数据库
最佳答案
可能是这样的
Update T
SET A = CASE WHEN A IS NOT NULL THEN 'Value' ELSE A END,
B = CASE WHEN B IS NOT NULL THEN 'Value' ELSE B END,
C = CASE WHEN C IS NOT NULL THEN 'Value' ELSE C END
D = CASE WHEN D IS NOT NULL THEN 'Value' ELSE D END
FROM Table1 T
关于SQL 查询 If not null, then update or else keep the same data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38051311/
我是一名优秀的程序员,十分优秀!