NVL (मान, डिफ़ॉल्ट) वह फ़ंक्शन है जिसकी आप तलाश कर रहे हैं।
select type, craft, sum(NVL(regular, 0) + NVL(overtime, 0) ) as total_hours
from hours_t
group by type, craft
order by type, craft
Oracle में 5 NULL-संबंधित कार्य हैं:
- एनवीएल
- एनवीएल2
- COALESCE
- नलिफ़
- एलएनएनवीएल
एनवीएल :
NVL(expr1, expr2)
<ब्लॉककोट> एनवीएल आपको क्वेरी के परिणामों में एक स्ट्रिंग के साथ नल (रिक्त के रूप में लौटा) को बदलने देता है। यदि expr1 शून्य है, तो NVL expr2 लौटाता है। यदि expr1 रिक्त नहीं है, तो NVL expr1 लौटाता है।
NVL2 :
NVL2(expr1, expr2, expr3)
<ब्लॉककोट> NVL2 आपको यह निर्धारित करने देता है कि कोई निर्दिष्ट व्यंजक शून्य है या नहीं, इस आधार पर किसी क्वेरी द्वारा लौटाया गया मान। यदि expr1 रिक्त नहीं है, तो NVL2 expr2 लौटाता है। अगर expr1 शून्य है, तो NVL2 expr3 लौटाता है।
COALESCE
COALESCE(expr1, expr2, ...)
<ब्लॉककोट> COALESCE व्यंजक सूची में पहला गैर-शून्य expr देता है। कम से कम एक expr शाब्दिक NULL नहीं होना चाहिए। यदि एक्सप्र की सभी घटनाएं शून्य पर मूल्यांकन करती हैं, तो फ़ंक्शन शून्य हो जाता है।
नलिफ़
NULLIF(expr1, expr2)
<ब्लॉककोट> NULLIF, expr1 और expr2 की तुलना करता है। यदि वे बराबर हैं, तो फ़ंक्शन शून्य हो जाता है। यदि वे समान नहीं हैं, तो फ़ंक्शन expr1 लौटाता है। आप expr1 के लिए शाब्दिक NULL निर्दिष्ट नहीं कर सकते।
एलएनएनवीएल
LNNVL(condition)
<ब्लॉककोट> LNNVL उस स्थिति का मूल्यांकन करने का एक संक्षिप्त तरीका प्रदान करता है जब स्थिति के एक या दोनों ऑपरेंड शून्य हो सकते हैं।
Oracle SQL फ़ंक्शंस के बारे में अधिक जानकारी