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

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

SQL सर्वर में, T-SQL DATEPART() फ़ंक्शन एक पूर्णांक देता है जो निर्दिष्ट डेटपार्ट . का प्रतिनिधित्व करता है निर्दिष्ट तारीख . के . उदाहरण के लिए, आप 2021-01-07 . में पास कर सकते हैं और SQL सर्वर केवल वर्ष का हिस्सा लौटाता है (2021 )।

आप समय भाग भी निकाल सकते हैं। उदाहरण के लिए, आप 2018-06-02 08:24:14.3112042 में पास कर सकते हैं और SQL सर्वर को केवल घंटे का हिस्सा लौटाएं (8 )।

नीचे दिए गए उदाहरण।

सिंटैक्स

सबसे पहले, वाक्यविन्यास। DATEPART() वाक्य रचना इस प्रकार है:

DATEPART ( datepart , date )

जहां datepart date . का हिस्सा है (एक तारीख या समय मान) जिसके लिए एक पूर्णांक वापस किया जाएगा।

उदाहरण 1

यहां एक बुनियादी उदाहरण दिया गया है जहां मैं किसी तारीख से वर्ष घटक लौटाता हूं।

SELECT DATEPART(year, '2021-01-07') AS Result;

परिणाम:

+----------+
| Result   |
|----------|
| 2021     |
+----------+

उदाहरण 2

इस उदाहरण में मैं एक चर के लिए एक तिथि निर्दिष्ट करता हूं, फिर मैं DATEPART() . के कई उदाहरणों का उपयोग करता हूं उस तिथि के विभिन्न भागों को पुनः प्राप्त करने के लिए।

DECLARE @date datetime2 = '2018-06-02 08:24:14.3112042';
SELECT 
    DATEPART(year, @date) AS Year,
    DATEPART(quarter, @date) AS Quarter,
    DATEPART(month, @date) AS Month,
    DATEPART(dayofyear, @date) AS 'Day of Year',
    DATEPART(day, @date) AS Day,
    DATEPART(week, @date) AS Week,
    DATEPART(weekday, @date) AS Weekday;

परिणाम:

+--------+-----------+---------+---------------+-------+--------+-----------+
| Year   | Quarter   | Month   | Day of Year   | Day   | Week   | Weekday   |
|--------+-----------+---------+---------------+-------+--------+-----------|
| 2018   | 2         | 6       | 153           | 2     | 22     | 7         |
+--------+-----------+---------+---------------+-------+--------+-----------+

उदाहरण 3

आप दिनांक से विभिन्न समय भागों को भी पुनः प्राप्त कर सकते हैं।

DECLARE @date datetime2 = '2018-06-02 08:24:14.3112042';
SELECT 
    DATEPART(hour, @date) AS Hour,
    DATEPART(minute, @date) AS Minute,
    DATEPART(second, @date) AS Second,
    DATEPART(millisecond, @date) AS Millsecond,
    DATEPART(microsecond, @date) AS Microsecond,
    DATEPART(nanosecond, @date) AS Nanosecond;

परिणाम:

+--------+----------+----------+--------------+---------------+--------------+
| Hour   | Minute   | Second   | Millsecond   | Microsecond   | Nanosecond   |
|--------+----------+----------+--------------+---------------+--------------|
| 8      | 24       | 14       | 311          | 311204        | 311204200    |
+--------+----------+----------+--------------+---------------+--------------+

उदाहरण 4

आप TZoffset . भी प्राप्त कर सकते हैं और ISO_WEEK डेटपार्ट।

TZoffset मिनटों की संख्या (हस्ताक्षरित) के रूप में लौटा दी जाती है। ISO_WEEK डेटपार्ट आईएसओ वीक-डेट सिस्टम (आईएसओ 8601 मानक का हिस्सा) को संदर्भित करता है जो हफ्तों के लिए एक नंबरिंग सिस्टम है।

DECLARE @date datetimeoffset = '2018-06-02 08:24:14.3112042 +08:00';
SELECT 
    DATEPART(TZoffset, @date) AS 'Time Zone Offset',
    DATEPART(ISO_WEEK, @date) AS 'ISO_WEEK';

परिणाम:

+--------------------+------------+
| Time Zone Offset   | ISO_WEEK   |
|--------------------+------------|
| 480                | 22         |
+--------------------+------------+

इस उदाहरण में, मैंने दिनांक को datetimeoffset . पर सेट किया है प्रारूप, जिसमें टाइमज़ोन ऑफ़सेट शामिल है। TZoffset मिनटों में लौटा दिया जाता है।

एक त्वरित विकल्प

टी-एसक्यूएल DAY() के साथ किसी तारीख से दिन, महीने या साल के घटकों को वापस करने का एक अधिक संक्षिप्त तरीका भी प्रदान करता है , MONTH() और YEAR() कार्य।

वे इस तरह काम करते हैं:

DECLARE @date datetime2 = '2018-06-02 08:24:14.3112042';
SELECT 
    DAY(@date) AS DAY,
    MONTH(@date) AS MONTH,
    YEAR(@date) AS YEAR;

परिणाम:

+-------+---------+--------+
| DAY   | MONTH   | YEAR   |
|-------+---------+--------|
| 2     | 6       | 2018   |
+-------+---------+--------+

महीने का नाम या दिन का नाम प्राप्त करना

यदि आप महीने का नाम या दिन का नाम प्राप्त करना चाहते हैं, तो DATENAME() . का उपयोग करें इसके बजाय कार्य करें। यह फ़ंक्शन एक वर्ण स्ट्रिंग के रूप में परिणाम देता है, और आप महीने और कार्यदिवस को नाम से वापस कर सकते हैं। यहां कुछ DATENAME() हैं मेरे मतलब को प्रदर्शित करने के लिए उदाहरण।


  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 सर्वर - लेन-देन त्रुटि पर वापस रोल?

  2. एसक्यूएल सर्वर डेटाबेस में प्राथमिक कुंजी बाधा के साथ या बिना सभी टेबल कैसे प्राप्त करें - एसक्यूएल सर्वर/टीएसक्यूएल ट्यूटोरियल 59

  3. क्या आप टीएसक्यूएल कोड से एक webservice कॉल कर सकते हैं?

  4. SQL सर्वर (T-SQL) में वर्तमान लॉगिन नाम लौटाएँ

  5. मैं sqlcmd.exe का उपयोग करके तर्कों के साथ संग्रहीत कार्यविधि को कैसे कॉल करूं?