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

ISDATE() SQL सर्वर में उदाहरण

SQL सर्वर में, आप ISDATE() . का उपयोग कर सकते हैं यह जांचने के लिए कार्य करता है कि कोई मान मान्य दिनांक है या नहीं।

अधिक विशिष्ट होने के लिए, यह फ़ंक्शन केवल यह जांचता है कि मान मान्य है या नहीं तारीखसमय , या डेटाटाइम मान, लेकिन डेटाटाइम2 . नहीं मूल्य। अगर आप एक डेटाटाइम2 . प्रदान करते हैं मान, ISDATE() आपको बताएगा कि यह कोई तारीख नहीं है (यह 0 लौटाएगा )।

इस लेख में इस फ़ंक्शन के उदाहरण हैं।

सिंटैक्स

सबसे पहले, यहाँ सिंटैक्स है:

ISDATE ( expression )

जहां expression परीक्षण की जाने वाली अभिव्यक्ति है।

उदाहरण 1 - मान्य तिथि

यहां एक मान्य व्यंजक का उपयोग करने वाला एक उदाहरण दिया गया है:

SELECT ISDATE('2000-01-01') AS Result;

परिणाम:

+----------+
| Result   |
|----------|
| 1        |
+----------+

यह देता है 1 , जिसका अर्थ है कि यह एक मान्य तारीख है , समय , या डेटाटाइम मूल्य।

उदाहरण 2 - अमान्य तिथि

यहां एक अमान्य एक्सप्रेशन वाला उदाहरण दिया गया है:

SELECT ISDATE('2000-01-01 00:00:00.0000000') AS Result;

परिणाम:

+----------+
| Result   |
|----------|
| 0        |
+----------+

यह 0 returns लौटाता है , जिसका अर्थ है कि यह मान्य नहीं है तारीखसमय , या डेटाटाइम मूल्य।

उदाहरण 3 - वापसी मूल्य का उपयोग करना

आप वापसी मूल्य का उपयोग करने के लिए एक सशर्त विवरण का उपयोग कर सकते हैं (केवल 0 प्रदर्शित करने के बजाय) या 1 )।

यहां एक बुनियादी उदाहरण दिया गया है जहां हम केवल मान्य तिथि print प्रिंट करते हैं या अमान्य तिथि , इस पर निर्भर करता है कि वापसी मूल्य 1 . है या नहीं या 0 :

IF ISDATE('2000-01-01') = 1  
    PRINT 'Valid Date'  
ELSE  
    PRINT 'Invalid Date';

परिणाम:

Valid Date

उदाहरण 4 - आपकी भाषा सेटिंग

ISDATE() . का वापसी मूल्य आपके LANGUAGE . पर निर्भर करता है और DATEFORMAT सेटिंग्स।

यह दिखाने के लिए यहां एक उदाहरण दिया गया है कि LANGUAGE के आधार पर एक ही मान अलग-अलग परिणाम कैसे दे सकता है सेटिंग का इस्तेमाल किया।

ब्रिटिश

SET LANGUAGE British;
SELECT ISDATE('20/01/2000') AS '20/01/2000 in British';

परिणाम:

Changed language setting to British.
+-------------------------+
| 20/01/2000 in British   |
|-------------------------|
| 1                       |
+-------------------------+

us_english

SET LANGUAGE us_english;
SELECT ISDATE('20/01/2000') AS '20/01/2000 in us_english';

परिणाम:

Changed language setting to us_english.
+----------------------------+
| 20/01/2000 in us_english   |
|----------------------------|
| 0                          |
+----------------------------+

ऐसा इसलिए होता है क्योंकि British दिन/माह/वर्ष . का उपयोग करता है प्रारूप जबकि us_english MM/dd/yyy . का उपयोग करता है ।

उदाहरण 5 - आपकी DATEFORMAT सेटिंग

जैसा कि उल्लेख किया गया है, ISDATE() . का वापसी मूल्य आपके DATEFORMAT . पर भी निर्भर करता है सेटिंग्स।

यह दिखाने के लिए यहां एक उदाहरण दिया गया है कि कैसे एक ही मान DATEFORMAT के आधार पर अलग-अलग परिणाम दे सकता है उपयोग की गई सेटिंग।

dmy

SET DATEFORMAT dmy;
SELECT ISDATE('20/01/2000') AS '20/01/2000 while DATEFORMAT is dmy';

परिणाम:

+--------------------------------------+
| 20/01/2000 while DATEFORMAT is dmy   |
|--------------------------------------|
| 1                                    |
+--------------------------------------+

एमडीई

SET DATEFORMAT mdy;
SELECT ISDATE('20/01/2000') AS '20/01/2000 while DATEFORMAT is mdy';

परिणाम:

+--------------------------------------+
| 20/01/2000 while DATEFORMAT is mdy   |
|--------------------------------------|
| 0                                    |
+--------------------------------------+


  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 सर्वर में चयन क्वेरी में कॉलम उपनाम को समझें - SQL सर्वर / TSQL ट्यूटोरियल भाग 115

  2. आप प्रति पंक्ति 8060 बाइट्स और 8000 प्रति (वर्कर, नवरचर) मूल्य की सीमा कैसे प्राप्त करते हैं?

  3. SQL Server 2000 का उपयोग करके पिवट करें

  4. SQL सर्वर में sys.parameters, sys.system_parameters और sys.all_parameters के बीच अंतर

  5. SQL सर्वर डेटाबेस में सभी अशक्त और अशक्त स्तंभों की सूची प्राप्त करें - SQL सर्वर / T-SQL ट्यूटोरियल भाग 53