BLANKS
एक SQL*Loader कीवर्ड है, ऐसा कुछ नहीं जिसे आप decode
. के अंदर उपयोग कर सकते हैं एसक्यूएल स्टेटमेंट - यह इसे कॉलम नाम के रूप में मान रहा है। यदि यह वास्तव में एक खाली (शून्य-लंबाई) स्ट्रिंग है, जैसा कि एक सीमांकित फ़ाइल में भी हो सकता है, decode
में आप ''
. का उपयोग कर सकते हैं BLANKS
. के बजाय; लेकिन Oracle वैसे भी इसे अशक्त मानता है। किस स्थिति में decode
बेमानी होना चाहिए और आप बस एक NULLIF
. का उपयोग कर सकते हैं जैसा कि आपके पास अन्य कॉलम के लिए है। यदि 'खाली' स्ट्रिंग वास्तव में एक या अधिक रिक्त स्थान है, तो आप कुछ ऐसा कर सकते हैं जैसे decode(TRIM(:PRIORITY),'',NULL,'\\N',NULL,:PRIORITY)
. (आपको decode
. के लिए अंतिम डिफ़ॉल्ट क्लॉज की आवश्यकता होगी वैसे भी या सभी मान शून्य हो जाएंगे।)