or如下:
方法一
update A_table A set A.kk=55 where A.pp='88' or A.pp='99' ;分开写
方法二
update A_table A set A.kk=55 where A.pp='99' ;
update A_table A set A.kk=55 where A.pp='88' ;这两咱哪一种比较快,,???如果数据比较多的情况下.少数据无法分出哪种快.
请有这方面经验的朋友,给点意见,,非常感谢.

解决方案 »

  1.   

    从oracle的执行计划中看2者一样;由于方法2是执行2次,所以应该是方法1快些。
    方法一 
    update A_table A set A.kk=55 where A.pp='88' or A.pp='99' ;or 换成exist语法会快些
      

  2.   

    无论原始有多大的数据量都是第二种方法比较快。第一种方法就是为了写起来省事而已。一般开发人员写脚本的话,习惯第一种。DBA的话应该会用第二种方式。where子句能不用 or 、<> 就不用。
      

  3.   

    数据少就用1,多也不用2,把1改进下,比如改成exist