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

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

SQL सर्वर में, SWITCHOFFSET() फ़ंक्शन का उपयोग डेटाटाइमऑफ़सेट . वापस करने के लिए किया जा सकता है मान जो संग्रहीत समय क्षेत्र ऑफ़सेट से एक निर्दिष्ट नए समय क्षेत्र ऑफ़सेट में बदल दिया जाता है।

यह फ़ंक्शन कैसे काम करता है, इसके उदाहरण नीचे दिए गए हैं।

सिंटैक्स

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

SWITCHOFFSET ( DATETIMEOFFSET, time_zone )

जहां DATETIMEOFFSET एक अभिव्यक्ति है जिसे datetimeoffset(n) . में हल किया जा सकता है मान, और time_zone प्रारूप में एक वर्ण स्ट्रिंग है [+|-]TZH:TZM या एक हस्ताक्षरित पूर्णांक (मिनटों का) जो समय क्षेत्र ऑफ़सेट का प्रतिनिधित्व करता है, और इसे डेलाइट-सेविंग जागरूक और समायोजित माना जाता है।

परिणाम एक डेटाटाइमऑफ़सेट . के रूप में लौटाया जाता है DATETIMEOFFSET . की भिन्नात्मक सटीकता के साथ तर्क।

उदाहरण 1

यहां उपयोग का एक बुनियादी उदाहरण दिया गया है:

SELECT SWITCHOFFSET( '2112-01-01', '+08:00' ) AS Result;

परिणाम:

Result
----------------------------------
2112-01-01 08:00:00.0000000 +08:00

उदाहरण 2

यह उदाहरण ऋणात्मक मान का उपयोग करता है:

SELECT SWITCHOFFSET( '2112-01-01', '-08:00' ) AS Result;

परिणाम:

Result
----------------------------------
2111-12-31 16:00:00.0000000 -08:00

उदाहरण 4

इस उदाहरण में हम एक चर घोषित करते हैं और डेटाटाइमऑफ़सेट . का उपयोग करके इसे एक तिथि निर्दिष्ट करते हैं डेटा प्रकार। फिर हम SWITCHOFFSET() . लागू करते हैं उस तारीख तक और उसकी तुलना मूल तारीख से करें।

DECLARE @date datetimeoffset = '2112-01-01 00:00:00.0000000 +04:00';
SELECT 
    @date AS 'Original Date',
    SWITCHOFFSET( @date, '+08:00' ) AS '+08:00';

परिणाम:

Original Date                      +08:00
---------------------------------- ----------------------------------
2112-01-01 00:00:00.0000000 +04:00 2112-01-01 04:00:00.0000000 +08:00

उदाहरण 5

यहां हम पिछले उदाहरण की तरह ही काम करते हैं, लेकिन हम SYSDATETIMEOFFSET() का उपयोग करते हैं वर्तमान दिनांक/समय और ऑफ़सेट उत्पन्न करने के लिए कार्य करता है।

SELECT 
    SYSDATETIMEOFFSET() AS 'Current Date',
    SWITCHOFFSET( SYSDATETIMEOFFSET(), '+08:00' ) AS '+08:00';

परिणाम:

Current Date                       +08:00
---------------------------------- ----------------------------------
2018-06-05 17:05:36.9415309 +10:00 2018-06-05 15:05:36.9415309 +08:00

उदाहरण 6

यह उदाहरण पिछले वाले जैसा ही है, सिवाय इसके कि हम एक नकारात्मक मान जोड़ते हैं।

SELECT 
    SYSDATETIMEOFFSET() AS 'Current Date',
    SWITCHOFFSET( SYSDATETIMEOFFSET(), '-08:00' ) AS '-08:00';

परिणाम:

Current Date                       -08:00
---------------------------------- ----------------------------------
2018-06-05 17:12:07.1122856 +10:00 2018-06-04 23:12:07.1122856 -08:00

उदाहरण 7

आप समय क्षेत्र ऑफ़सेट को एक स्ट्रिंग के बजाय एक पूर्णांक के रूप में भी प्रदान कर सकते हैं:

SELECT SWITCHOFFSET( '2112-01-01', -180 ) AS Result;

परिणाम:

Result
----------------------------------
2111-12-31 21:00:00.0000000 -03:00

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CONVERT() दिनांक/समय से SQL सर्वर में स्ट्रिंग उदाहरणों के लिए

  2. Azure डेटा स्टूडियो क्या है?

  3. इंडेक्स में कॉलम का क्रम कितना महत्वपूर्ण है?

  4. SQL सर्वर प्रदर्शन टॉप CPU क्वेरी -2

  5. विभिन्न SQL सर्वर उदाहरणों के लिए SSMS में स्थिति पट्टी का रंग कैसे सेट करें - SQL सर्वर / TSQL ट्यूटोरियल भाग 6