我不太擅长sql,并且已经尝试了一些方法。考虑到代码的性能,将这5条更新语句组合为一条语句的最佳方法是什么?将会有很大的帮助。非常感谢!

码:

----------------1

Update main_table
set  a = (case
..some code..  end)
where condition_2;

----------------2

Update main_table
set  b = (case
..some code.. end)
where condition_2

----------------3

Update main_table
set  c = (select x from sec_table where conditon_1)
where condition_2

----------------4

Update main_table
set  d = (select y from sec_table where conditon_1)
where condition_2

----------------5

Update main_table
set  e = (select z from sec_table where conditon_1)
where condition_2

最佳答案

我想你可以这样写:

update main_table
    set a = (case ..some code.. end),
        b = (case ..some code.. end),
        (c, d, e) = (select x, y, z from sec_table where conditon_1)
where condition_2

09-10 02:07
查看更多