0

我想写一个更新程序

哪种方法最好

1)方法一

if(condition)="P"

update table 
set fields1
 where field2 = "2" ;


else(condition)="U"
update table
 set fields1
 where field3 = "3" ;

2) 方法二

 case condition
   when "p"
update table 
set fields1
 where field2 = "2" ;


   when "u"
   update table
 set fields1
 where field3 = "3" ;

我应该使用哪种方法是否有使用它的理由以及为什么另一种方法不是一个好的选择。

4

2 回答 2

2
update table t
  set ...
  where (condition='P' and field2='2') or (condition='U' and field3='3')
于 2012-05-10T08:43:44.433 回答
0

我建议您使用CASE,因为与IF相比, CASE更高效且可读性更高。但是如果你有小桌子而且只有 2 个案例要检查.. 我认为这没有任何意义..

于 2012-05-14T07:46:16.017 回答