समस्या:
आप PostgreSQL डेटाबेस में अपने समय क्षेत्र ऑफ़सेट के साथ वर्तमान समय प्राप्त करना चाहते हैं।
समाधान:
वर्तमान समय और समय क्षेत्र की जानकारी प्राप्त करने के लिए हम CURRENT_TIME फ़ंक्शन का उपयोग करेंगे। यहां वह प्रश्न है जो आप लिखेंगे:
SELECT CURRENT_TIME;
ये रहा क्वेरी का नतीजा:
16:10:11.232455-05
चर्चा:
PostgreSQL फ़ंक्शन CURRENT_TIME
उस मशीन का वर्तमान समय और समय क्षेत्र ऑफसेट देता है जिस पर PostgreSQL चल रहा है। इसे 'hh:mm:ss.nnnnnn+/-tz' में मान के रूप में दिया जाता है प्रारूप। इस प्रारूप में:
- हह दो अंकों का घंटा है।
- मिमी दो अंकों का मिनट है।
- ss दो अंकों का सेकंड है।
- nnnnnn 0 से 6 तक भिन्नात्मक सेकंड (यानी सटीक) की संख्या को परिभाषित करता है।
- +tz या -tz समय क्षेत्र ऑफसेट है, या तो यूटीसी से प्लस या माइनस।
CURRENT_TIME
कोई कोष्ठक नहीं है। हालाँकि, यदि आप एक विशिष्ट सटीकता के साथ समय प्रदर्शित करना चाहते हैं, तो आप कोष्ठक जोड़ सकते हैं और 0 से 6 तक एक पूर्णांक संलग्न कर सकते हैं (एक "0" तर्क कोई भिन्नात्मक सेकंड नहीं लौटाएगा, "1" एक भिन्नात्मक सेकंड लौटाएगा (जैसे एक दशमलव के पीछे रखें), आदि। यह आपके द्वारा घोषित आंशिक सेकंड की संख्या और समय क्षेत्र ऑफसेट के साथ समय लौटाएगा। अगला उदाहरण देखें:
SELECT CURRENT_TIME(2) ;
ये रहा क्वेरी का नतीजा:
16:10:11.23-05
इस परिणाम में 2 अंकों का भिन्नात्मक दूसरा है क्योंकि हम तर्क के रूप में 2 रखते हैं। समय क्षेत्र ऑफसेट या तो सकारात्मक या नकारात्मक (+ या -) के रूप में प्रकट होता है, जो इस बात पर निर्भर करता है कि समय UTC से आगे है या पीछे।
इस फ़ंक्शन द्वारा लौटाया गया समय लेन-देन या एकल क्वेरी के दौरान नहीं बदलता है। यह हमेशा वह समय होता है जब लेनदेन शुरू होता है।