union 代替or的情況

2021-06-20 15:37:48 字數 869 閱讀 1662

技巧2:union 代替or的情況

當sql語句中,or 條件上面有乙個為子查詢,並且子查詢上的表與源表不同,這個時候就可以用union代替or或者你發現執行計畫中的 filter 有 or 並且 or 後面跟上子查詢

(exists...)的時候就要注意,比如:

2 - filter("t"."lrr_dm"='e90e3fe4237c4af988477329c7f2059e' or

"t"."kpr_dm"='e90e3fe4237c4af988477329c7f2059e' or exists (select 0 from "khgl_khywdlxx" "y" where "y"."kh_id"=:b1 and

"y"."sskhjl_dm"='e90e3fe4237c4af988477329c7f2059e'))

當然了,當你看到operation中的filter也應該要注意這些

示例如下(請自己動手實驗):

create table test1 as select * from dba_objects;

create table test2 as select * from dba_objects;

create index idx1 on test1(object_id);

create index idx2 on test1(owner);

create index idx3 on test2(object_id);

create index idx4 on test2(owner);

begin

dbms_stats.gather_table_stats(ownname => 'scott',

CBB電容代替電容的情況及兩者區別

本文根據網路進行整理 因為這是根據濾波種類決定的,濾直流波用極性電解電容,濾交流波得用無極性cbb電容,當需要濾交流波的時候,就要用cbb電容代替電解電容。而且當電路為高頻電路的時候,更是需要使用cbb電容。兩者的特點如下 cbb電容 無極性,絕緣阻抗很高,頻率特性優異 頻率響應寬廣 而且介質損失很...

儲存過程無法代替觸發器的特殊情況

在這裡先解釋一下推崇用儲存過程代替觸發器的原因,當然這裡先要說明一下此概念受教於itpub論壇的newkid版主的經驗。直接進入正題,絕大多數的由觸發器提供的功能都可以用儲存過程都能實現,而觸發器是 隱式 執行,儲存過程是 顯式 執行,也就是說,當你對乙個表進行操作的時候,儲存過程出現於你的程式 中...

代替for迴圈的方法

為什麼要挑戰自己在 裡不寫for loop?因為這樣可以迫使你去使用比較高階 地道的語法或庫。文中以python為例子,講了不少大家其實在別人的 裡都見過 但自己很少用的語法。這是乙個挑戰。我要你避免在任何情況下寫for迴圈。同樣的,我也要你找到一種場景 除了用for迴圈以外,用其他方法寫都太難。請...