Oracle डाटाबेस के साथ, हम TO_CHAR(datetime)
. का उपयोग कर सकते हैं शतक को डेटाटाइम मान से वापस करने का कार्य करता है।
ऐसा करने के लिए, हम या तो CC
. का उपयोग कर सकते हैं प्रारूप तत्व, या SCC
प्रारूप तत्व। हम इन्हें अन्य प्रारूप तत्वों के साथ जोड़ सकते हैं जैसे काम करने के लिए, क्रमिक संख्या प्रदर्शित करना, शताब्दी को स्पेल आउट करना, आदि।
उदाहरण
यहां एक उदाहरण दिया गया है जो CC
. का उपयोग करता है दिनांक मान से शतक वापस करने के लिए प्रारूप तत्व:
SELECT TO_CHAR(DATE '2030-12-30', 'CC')
FROM DUAL;
परिणाम:
21
नकारात्मक शतक
हम SCC
. का उपयोग कर सकते हैं नकारात्मक तिथि पास करते समय ऋण चिह्न शामिल करने के लिए प्रारूप तत्व:
SELECT TO_CHAR(DATE '-2030-12-30', 'SCC')
FROM DUAL;
परिणाम:
-21
क्रमिक संख्या
हम TH
जोड़ सकते हैं सदी की क्रमिक संख्या वापस करने के लिए प्रारूप तत्व।
SELECT TO_CHAR(DATE '2030-12-30', 'CCTH')
FROM DUAL;
परिणाम:
21ST
हम "सेंचुरी" शब्द को जोड़ने के लिए मनमाना टेक्स्ट भी जोड़ सकते हैं:
SELECT TO_CHAR(DATE '2030-12-30', 'CCTH "Century"')
FROM DUAL;
परिणाम:
21ST Century
ध्यान दें कि टेक्स्ट दोहरे उद्धरण चिह्नों से घिरा हुआ है।
हम आवश्यकतानुसार कैपिटलाइज़ेशन का उपयोग कर सकते हैं:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccth "Century"')
FROM DUAL;
परिणाम:
21ST Century
ध्यान दें कि मैंने प्रारूप मॉडल में केवल पहले वर्ण को बड़ा किया है। मेरा मतलब यह है कि मैंने Ccth
. का उपयोग किया है CCth
. के बजाय . जबकि आप सोच सकते हैं कि CCth
इसका परिणाम लोअरकेस क्रमांक संख्या में होना चाहिए, ऐसा नहीं है कि यह कैसे काम करता है। जब हम ऐसा करते हैं तो यहां क्या होता है:
SELECT TO_CHAR(DATE '2030-12-30', 'CCth "Century"')
FROM DUAL;
परिणाम:
21ST Century
मूल रूप से, जब प्रारूप मॉडल के पहले दो अक्षर अपरकेस होते हैं, तो परिणाम अपरकेस होता है। इसलिए, शीर्षक केस बनाने के लिए, केवल प्रारूप मॉडल के पहले वर्ण को कैपिटलाइज़ करें।
वर्तनी सेंचुरी
हम SP
जोड़ सकते हैं सेंचुरी को स्पेलिंग आउट करने के लिए फॉर्मेट एलिमेंट:
SELECT TO_CHAR(DATE '2030-12-30', 'CCTHSP "Century"')
FROM DUAL;
परिणाम:
TWENTY-FIRST Century
और हम आवश्यकतानुसार पूंजीकरण का उपयोग कर सकते हैं:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccthsp "Century"')
FROM DUAL;
परिणाम:
Twenty-First Century
हम TH
. को छोड़ सकते हैं प्रारूप विनिर्देशक यदि हम क्रम संख्या नहीं चाहते हैं:
SELECT TO_CHAR(DATE '2030-12-30', 'Ccsp')
FROM DUAL;
परिणाम:
Twenty-One
20वीं बनाम 21वीं सदी
जब किसी तारीख को 20वीं सदी बनाम 21वीं सदी में माना जाता है, तो उसके संबंध में निम्नलिखित नियम लागू होते हैं।
- यदि किसी 4-अंकीय वर्ष के अंतिम 2 अंक 01 और 99 (समावेशी) के बीच हैं, तो शताब्दी उस वर्ष के पहले 2 अंकों से एक बड़ी है।
- यदि किसी 4-अंकीय वर्ष के अंतिम 2 अंक 00 हैं, तो शताब्दी उसी वर्ष के पहले 2 अंकों के समान है।
यही अवधारणा अन्य शताब्दियों पर भी लागू होती है, जैसे कि 13वीं शताब्दी, 30वीं शताब्दी, आदि।
उदाहरण:
SELECT
TO_CHAR(DATE '1999-12-30', 'CC') AS "1999",
TO_CHAR(DATE '2000-12-30', 'CC') AS "2000",
TO_CHAR(DATE '1299-12-30', 'CC') AS "1299",
TO_CHAR(DATE '1300-12-30', 'CC') AS "1300",
TO_CHAR(DATE '2999-12-30', 'CC') AS "2999",
TO_CHAR(DATE '3000-12-30', 'CC') AS "3000"
FROM DUAL;
परिणाम:
1999 2000 1299 1300 2999 3000 _______ _______ _______ _______ _______ _______ 20 20 13 13 30 30
Oracle में डेटाटाइम मानों को स्वरूपित करने के लिए और भी कई प्रारूप तत्व उपलब्ध हैं। पूरी सूची के लिए Oracle में डेटाटाइम प्रारूप तत्वों की सूची देखें।