试图避免更新查询

Posted

技术标签:

【中文标题】试图避免更新查询【英文标题】:Trying to avoid an Update Query 【发布时间】:2015-06-26 13:52:33 【问题描述】:

我想根据 COL C、D 和 E 中的条件从 COL_B 中选择一个值作为 COL_A。 我试图避免使用更新查询。类似于 Excel 中的嵌套 IF。

IF COL_C=TRUE AND COL_D=TRUE AND COL_E=TRUE
THEN SELECT COL_B AS COL_A
ELSE COL_A

我可以将它推入临时表并根据条件将 COL_A 更新为 COL_B,但我想在 SELECT 语句中执行此操作。有什么想法吗?

【问题讨论】:

【参考方案1】:

您可能需要以下内容:

SELECT my_result =
  CASE
    WHEN COL_C=TRUE AND COL_D=TRUE and COL_E=TRUE THEN COL_B
    ELSE COL_A
  END
 AS COL_A
 FROM my_table

另见this question

【讨论】:

【参考方案2】:

谢谢。那行得通。

[结果]= 案子 什么时候 COL_A=TRUE AND COL_B=TRUE AND COL_C=TRUE 那么冷_D ELSE COL_E 结束

【讨论】:

以上是关于试图避免更新查询的主要内容,如果未能解决你的问题,请参考以下文章

SQL 在单个查询中更新和选择

BackgroundWorker UI不会更新Windows Phone 7中的进度

Oracle查询中最好的方法是啥,以避免更新字段,如果它没有改变?

如何避免在一对多单向关联中插入和更新查询

Vue Firestore 查询。 Firestore更新数据时如何避免重复?

在 netezza 中使用三个表进行更新