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

SYS_EXTRACT_UTC () Oracle में फ़ंक्शन

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:

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. R12/R12.2 . में Oracle प्रपत्र

  2. ORA-12170:TNS:कनेक्ट टाइमआउट हुआ

  3. Oracle SQL का उपयोग करते हुए, एक आउटपुट दिन सप्ताह की संख्या और सप्ताह का दिन कैसे करता है?

  4. ओरेकल डेटटाइम कहां क्लॉज में?

  5. Oracle डेवलपर VM का उपयोग करके सीखने और परीक्षण के लिए पूर्व-निर्मित Oracle डेटाबेस