Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

ISNUMERIC('.') 1 क्यों लौटाता है?

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 जो इसमें बहुत मदद करते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में एक पूर्णांक को दशमलव में बदलने के 3 तरीके

  2. हर पंक्ति का चयन कैसे करें जहां कॉलम मान अलग नहीं है

  3. SQL सर्वर में पिछला व्हाइटस्पेस कैसे निकालें - RTRIM ()

  4. एक्सेल डेट सीरियल नंबर को रेगुलर डेट में बदलें

  5. DBNull's से निपटने का सबसे अच्छा तरीका क्या है?