आप एक रिक्त स्ट्रिंग प्राप्त नहीं कर सकते क्योंकि आप DATE
मान प्रकार से वापस कर रहे हैं ISNULL
।
प्रति MSDN ,ISNULL
उसी प्रकार को लौटाता है जैसे check_expression। यदि एक शाब्दिक NULL को check_expression के रूप में प्रदान किया जाता है, तो प्रतिस्थापन_काले का डेटाटाइप लौटाता है। यदि एक शाब्दिक NULL चेक_ डेक्प्रेशन के रूप में प्रदान किया गया है और कोई रिप्लेसमेंट_वल्यू प्रदान नहीं किया गया है, तो एक इंट देता है।
यदि आप जाँच रहे हैं कि मान है या नहीं NULL
, तो इसे किसी तिथि में परिवर्तित करने की कोई आवश्यकता नहीं है, जब तक कि आप एक तारीख मान वापस नहीं करना चाहते (जो आपको नहीं लगता)।
इसके बजाय, उपयोग करें:
SELECT ISNULL( DOB , '')
जो लौट आएगा
''
अगर मूल्य है NULL
।
एक NULL
तारीख है NULL
(कोई मूल्य नहीं)। दूसरी ओर, एक खाली स्ट्रिंग, मूल्यांकन करती है 0
, जिसमें SQL सर्वर अव्यवस्थित रूप से एक पूर्णांक है जो दिनों की संख्या का प्रतिनिधित्व करता है 1900-01-01
।
NULL
तारीखों के साथ जो कर रहे हैं वह कह रहा हैSELECT CAST('' AS DATE)
। डेटा प्रकार क्या हैDOB
?