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

Oracle में NVL () फ़ंक्शन का उपयोग कैसे करें

यह Oracle SQL ट्यूटोरियल Oracle में NVL फ़ंक्शन के लिए स्पष्टीकरण, उदाहरण प्रदान करता है

Oracle में NVL () फ़ंक्शन क्या है

Oracle में NVL फ़ंक्शन एक नेस्टिंग फ़ंक्शन है जिसका उपयोग कुछ मानों के साथ शून्य मानों को प्रतिस्थापित करने के लिए किया जाता है

उपरोक्त सिंटैक्स में

expr1 :यह स्रोत मान या अभिव्यक्ति है जिसमें शून्य हो सकता है। आप कॉलम नाम, कॉलम नाम पर फ़ंक्शन प्रदान कर सकते हैं
expr2:यह लक्ष्य मान है जिसे एक्सप्र 1 से नल वापस आने की स्थिति में रखा जाएगा

यदि expr1 शून्य है, तो NVL expr2 लौटाता है। यदि expr1 रिक्त नहीं है, तो NVL expr1 लौटाता है।

ध्यान देने योग्य महत्वपूर्ण बिंदु
(1) तर्क expr1 और expr2 में कोई भी डेटा प्रकार हो सकता है। यदि उनके डेटा प्रकार भिन्न हैं, तो Oracle डेटाबेस परोक्ष रूप से एक को दूसरे में परिवर्तित करता है। यदि उन्हें परोक्ष रूप से परिवर्तित नहीं किया जा सकता है, तो डेटाबेस एक त्रुटि देता है।
यदि expr1 वर्ण डेटा है, तो Oracle डेटाबेस expr2 को तुलना करने से पहले expr1 के डेटा प्रकार में कनवर्ट करता है और VARCHAR2 को expr1 के वर्ण सेट में लौटाता है।

यदि expr1 सांख्यिक है, तो Oracle यह निर्धारित करता है कि किस तर्क में सबसे अधिक संख्यात्मक पूर्वता है, दूसरे तर्क को उस डेटाटाइप में परोक्ष रूप से परिवर्तित करता है, और उस डेटाटाइप को लौटाता है।

तो निम्नलिखित कथन सफल होगा

से nvl(num-col,10) चुनें 
से nvl(char-col,'NA') चुनें
से nvl(end_date,'01-MAY-18') चुनें

निम्नलिखित कथन निहित रूपांतरण करेगा

. से nvl(char-col ,1) चुनें

निम्नलिखित कथन विफल हो जाएगा

से nvl(end_date,'m/a') चुनें
से nvl(user_id,'abc') चुनें

NVL() फ़ंक्शन का उपयोग कैसे करें


यह फ़ंक्शन बहुत उपयोगी है जहां हम शून्य मान वापस नहीं करना चाहते हैं या संख्यात्मक गणना में शून्य के रूप में पूरे मानों को शून्य में बदल देगा

चलो इसे समझने के लिए एक उदाहरण लें
हमारे पास एक सेल्स_पीपल टेबल है जिसमें सेल्सपर्सन द्वारा की गई बिक्री, बिक्री पर कमीशन%, लोगों का वेतन शामिल है। हम सेल्सपर्सन के लिए कुल मासिक आय की गणना करना चाहते हैं। बिक्री में शून्य मान हो सकते हैं

वक्तव्य होगा

नाम चुनें,(वेतन + बिक्री*कमीशन/100)  बिक्री_लोगों से मासिक आय;

यह उन सभी लोगों के शून्य मान लौटाएगा जिन्होंने उस अवधि में कोई बिक्री नहीं की है क्योंकि गणना में शून्य मान होंगे

इसे nvl फ़ंक्शन का उपयोग करके

. के रूप में ठीक किया जा सकता है
नाम चुनें,(वेतन + nvl(बिक्री,0)*कमीशन/100) sales_people से मासिक_आय;

तो यह स्पष्ट रूप से गणितीय संक्रियाओं को करते समय बहुत सहायक होता है। Oracle में NVL फंक्शन काफी उपयोगी फंक्शन है और इसे कई जगहों पर इस्तेमाल किया जा सकता है

यह भी पढ़ता है
Oracle sql दिनांक फ़ंक्शन
Oracle में NULLIF फ़ंक्शन
ओरेकल में अद्यतन विवरण
Oracle में Coalesce फ़ंक्शन
ओरेकल में दिनांक स्वरूप बदलें
https://docs .oracle.com/cd/B19306_01/server.102/b14200/functions105.htm


  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 ODP.Net एंटिटी फ्रेमवर्क 6 के साथ - एंटिटी फ्रेमवर्क डेटाबेस संगत प्रदाता नहीं मिला

  2. 11gR2 संपीड़न सलाहकार =बुराई

  3. ग्रिड इंफ्रास्ट्रक्चर को फिर से लिंक करें

  4. उपयोगकर्ताओं को Oracle में अतिरिक्त स्कीमा तक पहुँच प्रदान करने का सही तरीका

  5. दैवज्ञ में संचयी योग बनाएं

© कॉपीराइट http://hi.sqldat.com सर्वाधिकार सुरक्षित