IsNumeric () टूटा हुआ देखें? केवल एक बिंदु तक।
SELECT CAST('.' AS MONEY)
रिटर्न 0.00
(हालांकि कास्ट int
. के लिए विफल रहता है और float
)
ISNUMERIC
बस जांचता है कि मूल्य किसी भी संख्यात्मक डेटाटाइप में डाला जा सकता है जो आम तौर पर बेकार है। आम तौर पर आप जानना चाहते हैं कि क्या इसे किसी विशिष्ट प्रकार में डाला जा सकता है।
इसके अतिरिक्त यह सभी संभावित इनपुट के लिए उस कार्य को सही ढंग से करने के लिए भी प्रतीत नहीं होता है .. ISNUMERIC(' ')
रिटर्न 0
int और money दोनों को सफलतापूर्वक कास्ट करने के बावजूद। इसके विपरीत ISNUMERIC(N'8')
रिटर्न 1
लेकिन मैंने जो कुछ भी करने की कोशिश की, उसे सफलतापूर्वक नहीं डाला।
उसके लिए कुछ उपयोगी सहायक कार्य यहाँ हैं IsNumeric, IsInt, IsNumber।
SQL सर्वर 2012 ने TRY_PARSE
पेश किया और TRY_CONVERT
जो इसमें बहुत मदद करते हैं।