【问题标题】:Update 3 columns if other columns are not empty如果其他列不为空,则更新 3 列
【发布时间】:2020-06-07 18:28:43
【问题描述】:

所以我有 6 列并且我设置了值。我想要的是如果 1-2-3 列不为空,我想将这些值设置为 4-5-6 单元格,否则如果 1-2- 3 列为空或 null 以将它们写入那里。

update STORETRADELINES 
set SP_ORDERSTATUS = 6, 
WHERE SP_WAREHOUSEDATE is null and SP_REFQTY is null

我在哪里得到语法错误。

提前致谢。

【问题讨论】:

  • 为您正在使用的数据库提供样本数据、所需结果和标签。

标签: sql sql-server sql-update


【解决方案1】:

假设 empty 你的意思是 null,那就是:

update mytable
set col1 = 4, col2 = 5, col3 = 6
where col1 is null and col2 is null and col3 is null

注意:数据库表没有单元格,它们有。使用正确的术语可以让其他人更容易理解您的意思。

【讨论】:

  • Msg 156, Level 15, State 1, Line 4 关键字“WHERE”附近的语法不正确。
  • @MixMasteR:您可能没有完全按照提供的方式运行查询。我给你的查询不会产生这个错误:example on DB Fiddle.
  • 脚本很好,但是如果 col1,2,3 不为空,我想设置 col4,col5,col6 一些值,否则如果 1,2,3 为空,我希望值去那里。
猜你喜欢
  • 2013-09-01
  • 2012-10-29
  • 1970-01-01
  • 1970-01-01
  • 2018-02-02
  • 1970-01-01
  • 1970-01-01
  • 2014-10-01
  • 1970-01-01
相关资源
最近更新 更多