Oracle डाटाबेस में, SYS_EXTRACT_UTC()
फ़ंक्शन समय क्षेत्र ऑफ़सेट या समय क्षेत्र क्षेत्र के नाम के साथ डेटाटाइम मान से UTC (कोऑर्डिनेटेड यूनिवर्सल टाइम) को निकालता है।
सिंटैक्स
वाक्य रचना इस प्रकार है:
SYS_EXTRACT_UTC(datetime_with_timezone)
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:
SELECT
SYS_EXTRACT_UTC(TIMESTAMP '2035-08-25 10:30:45.123456789 +04:00')
FROM DUAL;
परिणाम:
25/AUG/35 06:30:45.123456789 AM
परिणामी स्वरूप आपके NLS_TIMESTAMP_FORMAT
. के मान पर निर्भर करता है पैरामीटर। इस पैरामीटर का डिफ़ॉल्ट मान NLS_TERRITORY
. से लिया गया है पैरामीटर। इनमें से किसी को भी बदलने से SYS_EXTRACT_UTC()
का प्रारूप बदल सकता है आपके सत्र के लिए कार्य करें।
उदाहरण:
ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'DD-MON-RRRR HH24:MI:SSXFF';
SELECT
SYS_EXTRACT_UTC(TIMESTAMP '2035-08-25 10:30:45.123456789 +04:00')
FROM DUAL;
परिणाम:
25-AUG-2035 06:30:45.123456789
और जब मैं NLS_TERRITORY
सेट करता हूं तो यह कैसा दिखता है AMERICA
. के लिए पैरामीटर :
ALTER SESSION SET NLS_TERRITORY = 'AMERICA';
SELECT
SYS_EXTRACT_UTC(TIMESTAMP '2035-08-25 10:30:45.123456789 +04:00')
FROM DUAL;
परिणाम:
25-AUG-35 06.30.45.123456789 AM
इस पैरामीटर को बदलने से परोक्ष रूप से NLS_TIMESTAMP_FORMAT
सेट करें AMERICA
. के प्रारूप में ।
अधिक जानकारी और उदाहरणों के लिए अपने सत्र के दिनांक स्वरूप को कैसे बदलें देखें।
समय क्षेत्र क्षेत्र का नाम
आप वैकल्पिक रूप से समय क्षेत्र ऑफ़सेट के बजाय समय क्षेत्र क्षेत्र के नाम का उपयोग कर सकते हैं।
उदाहरण:
SELECT
SYS_EXTRACT_UTC(TIMESTAMP '2035-08-25 10:30:45.123456789 Asia/Bangkok')
FROM DUAL;
परिणाम:
25-AUG-35 03.30.45.123456789 AM
डिफ़ॉल्ट समय क्षेत्र
यदि कोई समय क्षेत्र निर्दिष्ट नहीं है, तो डेटाटाइम सत्र समय क्षेत्र से संबद्ध है।
उदाहरण:
SELECT SYS_EXTRACT_UTC(TIMESTAMP '2035-08-25 10:30:45.123456789')
FROM DUAL;
परिणाम:
25-AUG-35 12.30.45.123456789 AM
आप SESSIONTIMEZONE
. के साथ वर्तमान सत्र के समय क्षेत्र की जांच कर सकते हैं समारोह:
SELECT SESSIONTIMEZONE
FROM DUAL;
परिणाम:
Australia/Brisbane
इसे बदलने के उदाहरणों के लिए Oracle में समय क्षेत्र बदलने के 4 तरीके देखें।
अशक्त तर्क
पासिंग null
एक त्रुटि में परिणाम:
SELECT SYS_EXTRACT_UTC(null)
FROM DUAL;
परिणाम:
Error starting at line : 1 in command - SELECT SYS_EXTRACT_UTC(null) FROM DUAL Error at Command Line : 1 Column : 24 Error report - SQL Error: ORA-30175: invalid type given for an argument 30175. 00000 - "invalid type given for an argument" *Cause: There is an argument with an invalid type in the argument list. *Action: Use the correct type wrapper for the argument.
अनुपलब्ध तर्क
फ़ंक्शन को तर्कों की गलत संख्या के साथ कॉल करना, या बिना कोई तर्क पारित किए, एक त्रुटि उत्पन्न होती है:
SELECT SYS_EXTRACT_UTC()
FROM DUAL;
परिणाम:
Error starting at line : 1 in command - SELECT SYS_EXTRACT_UTC() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: