SQLite ifnull()
फ़ंक्शन आपको NULL मानों को किसी अन्य मान से बदलने की अनुमति देता है।
इसमें दो तर्क होते हैं, और यह अपने पहले गैर-नल तर्क की एक प्रति देता है, या यदि दोनों तर्क न्यूल हैं तो NULL।
ifnull()
फ़ंक्शन coalesce()
. के बराबर है दो तर्कों के साथ।
साधारण उदाहरण
अवधारणा को प्रदर्शित करने के लिए यहां एक सरल उदाहरण दिया गया है।
SELECT
ifnull(123, 0),
ifnull(NULL, 0);
परिणाम:
ifnull(123, 0) ifnull(NULL, 0) -------------- --------------- 123 0
दूसरा कॉलम NULL था और इसलिए 0 इसके बजाय लौटा दिया गया था।
डेटाबेस उदाहरण
यह उदाहरण ifnull()
. का उपयोग करता है डेटाबेस क्वेरी में। यह दर्शाता है कि कैसे ifnull()
डेटा की क्वेरी करते समय उपयोगी हो सकता है जिसमें NULL मान हो सकते हैं।
निम्न तालिका को एक उदाहरण के रूप में लें:
ProductId ProductName Price ---------- ------------- ---------- 1 Widget Holder 139.5 2 Widget Stick 89.75 3 Foo Cap 11.99 4 Free Widget 0.0 5 Free Foobar 0.0 6 Free Beer
अधिकांश उत्पाद कीमतों से भरे हुए हैं, लेकिन निःशुल्क बीयर . की कीमत शून्य है।
हम इसे अपनी पसंद के मूल्य में बदल सकते हैं।
SELECT
ProductName,
ifnull(Price, 0.0)
FROM Products;
परिणाम:
ProductName ifnull(Price, 0.0) ------------- ------------------ Widget Holder 139.5 Widget Stick 89.75 Foo Cap 11.99 Free Widget 0.0 Free Foobar 0.0 Free Beer 0.0
अब इसकी कीमत अन्य मुफ्त उत्पादों के समान है।
प्रतिस्थापन मान के लिए एक संख्या होना आवश्यक नहीं है। आप इसे एक स्ट्रिंग से भी बदल सकते हैं।
SELECT
ProductName,
ifnull(Price, 'FREE!')
FROM Products;
परिणाम:
ProductName ifnull(Price, 'FREE!') ------------- ---------------------- Widget Holder 139.5 Widget Stick 89.75 Foo Cap 11.99 Free Widget 0.0 Free Foobar 0.0 Free Beer FREE!
जब दोनों तर्क शून्य हों
यदि दोनों तर्क NULL हैं, तो NULL वापस आ जाता है।
SELECT ifnull(NULL, NULL);
परिणाम:
ifnull(NULL, NULL) ------------------