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

समय क्षेत्र के बिना स्ट्रिंग को टाइमस्टैम्प में कैसे बदलें

एक timestamp का स्ट्रिंग प्रस्तुतिकरण (=timestamp without time zone ) आपकी लोकेल सेटिंग्स पर निर्भर करता है। इसलिए, अस्पष्टता से बचने के लिए डेटा त्रुटियाँ या पोस्टग्रेज़ अपवाद उत्पन्न करते हैं, आपके पास दो विकल्प हैं:

1.) ISO 8601 प्रारूप का उपयोग करें , जो किसी भी . के साथ समान कार्य करता है लोकेल या DateStyle सेटिंग:

'2013-08-20 14:52:49'

आपको स्ट्रिंग को शाब्दिक रूप से स्पष्ट रूप से डालना पड़ सकता है जहां उपयोग के मामले के आधार पर डेटा प्रकार को संदर्भ से प्राप्त नहीं किया जा सकता है:

'2013-08-20 14:52:49'::timestamp

2.) स्ट्रिंग को timestamp में बदलें to_timestamp() . का उपयोग करके मेल खाने वाले टेम्पलेट पैटर्न के साथ:

to_timestamp('20/8/2013 14:52:49', 'DD/MM/YYYY hh24:mi:ss')

यह timestamptz returns लौटाता है , वर्तमान समयक्षेत्र सेटिंग को मानते हुए। आम तौर पर (जैसे एक असाइनमेंट में) प्रकार को तदनुसार मजबूर किया जाता है। timestamp के लिए , इसका मतलब है कि समय ऑफसेट को छोटा कर दिया गया है और आपको अपेक्षित मूल्य मिलता है। फिर से, यदि लक्ष्य प्रकार को संदर्भ से प्राप्त नहीं किया जा सकता है, तो आपको स्पष्ट रूप से कास्ट करना पड़ सकता है:

to_timestamp('20/8/2013 14:52:49', 'DD/MM/YYYY hh24:mi:ss')::timestamp

चूंकि यह केवल समय की भरपाई करता है, इसका परिणाम अपेक्षित मूल्य में होता है। या AT TIME ZONE का उपयोग करें अपनी पसंद के समय क्षेत्र के साथ निर्माण करें:

to_timestamp('20/8/2013 14:52:49', 'DD/MM/YYYY hh24:mi:ss') AT TIME ZONE 'UTC'

जबकि लक्ष्य समय क्षेत्र आपके वर्तमान timezone . के समान है सेटिंग, कोई परिवर्तन नहीं होता है। अन्यथा परिणामी टाइमस्टैम्प को तदनुसार स्थानांतरित कर दिया जाता है। आगे पढ़ना:

  • रेल और पोस्टग्रेएसक्यूएल में टाइम ज़ोन को पूरी तरह नज़रअंदाज़ करना


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. गलती से हटाए गए डिफ़ॉल्ट सुपरयुसर विशेषाधिकार पोस्टग्रेज - क्या मैं इसे वापस प्राप्त कर सकता हूं?

  2. त्रुटि:कॉलम मौजूद नहीं है

  3. 1=1 पर शामिल हों (चुनें ...)?

  4. पहले से इंस्टॉल किए गए hstore एक्सटेंशन के साथ एक नया डेटाबेस कैसे बनाएं?

  5. PostgreSQL त्रुटि:फ़ंक्शन to_tsvector(चरित्र भिन्न, अज्ञात) मौजूद नहीं है