Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

(पीएलएसक्यूएल) ओरेकल ऑन-अपडेट ट्रिगर में बदले गए मूल्य के परीक्षण के लिए सबसे सरल अभिव्यक्ति क्या है?

इन छोटी विधियों के कई नुकसान हैं। वे धीमे, सहज, संभावित रूप से छोटी गाड़ी हैं (जब भी संभव हो जादू मूल्यों से बचें), और सामान्य स्थितियों जैसे AND/OR/IS NULL/IS NOT NULL से अधिक स्वामित्व वाली हैं।

NVL, DECODE, COALESCE, आदि आपके विचार से अधिक महंगे हो सकते हैं।

मैंने इसे कई बार कई अलग-अलग संदर्भों में देखा है, यहां एक सरल उदाहरण दिया गया है:

--Shorter method: Takes about 0.45 seconds
declare
  j number;
begin
  for i in 1 .. 1000000 loop
    j := i;
    if nvl(i <> j, (i is null) <> (j is null)) then
      null;
    end if;
  end loop;
end;
/

--Normal method: Takes about 0.25 seconds
declare
  j number;
begin
  for i in 1 .. 1000000 loop
    j := i;
    if i <> j or (i is null and j is not null) or (i is not null and j is null) then
      null;
    end if;
  end loop;
end;
/

मैं अनुशंसा करता हूं कि आप इसे तार्किक तरीके से टाइप करने के लिए अतिरिक्त सेकंड खर्च करें। आपका कोड बेहतर दिखेगा और तेजी से चलेगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle अनुक्रम निरंतर संख्या उत्पन्न नहीं कर रहा है

  2. जहां क्लॉज . में खाली कैरेक्टर को नजरअंदाज किया गया

  3. Oracle 11g स्थापित करने के बाद SQL*Plus से कनेक्ट करते समय कौन सा उपयोगकर्ता नाम और पासवर्ड दर्ज किया जाना चाहिए?

  4. ऑरैकल पीएल एसक्यूएल में गतिशील पिवट कैसे बनाएं

  5. Oracle में सिस्टमस्टैम्प फ़ंक्शन