【问题标题】:Multiple update from multiple conditions从多个条件进行多次更新
【发布时间】:2013-10-03 03:55:08
【问题描述】:

看起来像一个简单的问题,但我无法在 MsSql 中获得所需的内容,而我可以在 MySQL 和 Oracle 中轻松完成。

在 MySQL 中: 更新 table_spec_data 设置覆盖率=33 WHERE (specification_id, data_id) IN ( (247,1), (248,2), (249,3) );

在甲骨文中: 更新 table_spec_data 设置覆盖率=33 WHERE (specification_id, data_id) IN ( 从双联中选择 247,1 从双联中选择 248,2 从双重中选择 249,3 );

有人知道如何使用 MSSqlServer 吗?

【问题讨论】:

    标签: mysql sql sql-server oracle sql-update


    【解决方案1】:

    我认为你需要努力做到这一点:

     UPDATE table_spec_data SET coverage=33 WHERE 
         (specification_id = 247 AND data_id = 1)
         OR (specification_id = 248 AND data_id = 2)
         OR (specification_id = 249 AND data_id = 3)
    

    【讨论】:

    • 好的,非常感谢。我期待更快的东西......但也许这个执行计划在 SQLServer 上进行了优化。让我们看看表演...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    • 2019-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多