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

PostgreSQL में नंबर कैसे फॉर्मेट करें

Postgres के साथ काम करते समय, आप to_char() . का उपयोग कर सकते हैं किसी दिए गए प्रारूप में आउटपुट नंबरों के लिए कार्य।

जिस तरह से यह काम करता है वह यह है कि आप दो तर्क प्रदान करते हैं। पहला तर्क स्वरूपित होने वाली संख्या है। दूसरा तर्क निर्धारित करता है कि इसे कैसे स्वरूपित किया जाता है।

वापसी मान पाठ है ।

अपनी आवश्यकताओं के आधार पर, आप संख्या को उपयुक्त डेटा प्रकार में बदलना पसंद कर सकते हैं, उदाहरण के लिए cast() का उपयोग करना समारोह।

दोनों विधियों के उदाहरण नीचे हैं।

उदाहरण

प्रदर्शित करने के लिए यहां एक बुनियादी उदाहरण दिया गया है।

SELECT to_char(10, '99.99');

परिणाम:

10.00

9 वास्तव में इस संदर्भ में विशेष अर्थ है। यह वर्ण मान्य टेम्प्लेट पैटर्न में से एक है, जिसमें संख्याओं को स्वरूपित करते समय आपकी प्रारूप स्ट्रिंग शामिल हो सकती है।

9 . के मामले में , यह एक अंक स्थिति निर्दिष्ट करता है, लेकिन यदि यह एक अग्रणी शून्य है तो इसे एक स्थान से बदल दिया जाएगा, जबकि यदि यह एक अनुगामी शून्य है और भरण मोड निर्दिष्ट है तो इसे हटा दिया जाएगा।

यदि मैं दशमलव स्थान और भिन्नात्मक सेकंड भाग को हटा दूं, तो मुझे एक अलग परिणाम मिलता है।

SELECT to_char(10, '99');

परिणाम:

10

अग्रणी शून्य छोड़ें

आप 9 . को बदल सकते हैं 0 . के साथ यदि आप महत्वहीन होने पर भी अग्रणी और अनुगामी शून्य को दबाना चाहते हैं।

यहां एक उदाहरण दिया गया है जो दोनों के बीच के अंतर को दर्शाता है।

SELECT 
  to_char(0010, '9999') AS "9999",
  to_char(0010, '0000') AS "0000";

परिणाम:

 9999  | 0000  
-------+-------
    10 |  0010

टेम्पलेट पैटर्न

जैसा कि पिछले उदाहरणों में देखा गया है, प्रारूप स्ट्रिंग में एक या अधिक टेम्पलेट पैटर्न होते हैं।

उदाहरण के लिए, 9999 एक प्रारूप स्ट्रिंग है जिसमें चार टेम्पलेट पैटर्न होते हैं - जिनमें से प्रत्येक 9 . हैं ।

दशमलव स्थान एक अन्य टेम्पलेट पैटर्न है।

मैं एक D . का उपयोग कर सकता था दशमलव स्थान के बजाय। यह वास्तविक स्वरूपण के लिए वर्तमान स्थान का उपयोग करता है।

SELECT 
  to_char(10, '99.99') AS "99.99",
  to_char(10, '99D99') AS "99D99";

परिणाम:

 99.99  | 99D99  
--------+--------
  10.00 |  10.00

टेम्पलेट पैटर्न और संशोधक की पूरी सूची के लिए, पोस्टग्रेज़ में संख्यात्मक स्वरूपण के लिए टेम्पलेट पैटर्न और संशोधक देखें।

टेम्पलेट पैटर्न संशोधक

कुछ संशोधक भी हैं जिनका उपयोग टेम्पलेट पैटर्न के साथ किया जा सकता है। ये उपयोग किए गए संशोधक के आधार पर आउटपुट को स्वरूपित करने के तरीके को बदलते हैं।

विशेष रूप से, तीन संशोधक हैं जिनका उपयोग संख्यात्मक स्वरूपण के साथ किया जा सकता है।

<थ>विवरण
संशोधक
FM उपसर्ग फिल मोड (पिछला शून्य और पैडिंग रिक्त स्थान दबाएं)
TH प्रत्यय अपर केस ऑर्डिनल नंबर सफ़िक्स
th प्रत्यय लोअर केस ऑर्डिनल नंबर प्रत्यय

ध्यान दें कि पहले को टेम्पलेट पैटर्न में उपसर्ग के रूप में जोड़ा जाता है और अन्य दो को प्रत्यय के रूप में जोड़ा जाता है।

क्रमिक संख्या

एक सामान्य आवश्यकता किसी संख्या को उसके क्रमसूचक में बदलना है। हम या तो TH . का उपयोग कर सकते हैं या th उसके लिए, हम चाहते हैं कि प्रत्यय अपरकेस या लोअरकेस हो।

यहाँ एक उदाहरण है।

SELECT to_char(03, 'FM99th');

परिणाम:

3rd

इस मामले में मैंने FM . का भी इस्तेमाल किया किसी भी रिक्त स्थान और अनुगामी शून्य को दबाने के लिए।

यहां FM का उपयोग करने के बीच तुलना की गई है और इसे छोड़ना:

SELECT 
  to_char(03, '99th') AS "99th",
  to_char(03, 'FM99th') AS "FM99th";

परिणाम:

 99th  | FM99th 
-------+--------
   3rd | 3rd

यदि आप बारीकी से देखें, तो पहले कॉलम में प्रमुख रिक्त स्थान हैं, जबकि दूसरे कॉलम में नहीं है।

मुद्रा

एक अन्य सामान्य आवश्यकता किसी दी गई मुद्रा में किसी संख्या को आउटपुट करना है।

इस मामले में, हम L . का उपयोग कर सकते हैं स्थानीय-जागरूक मुद्रा प्रतीक प्रदर्शित करने के लिए टेम्पलेट पैटर्न।

SELECT to_char(03, 'LFM99D00');

परिणाम:

$3.00

हस्ताक्षरित नंबर

हस्ताक्षरित संख्याओं के लिए टेम्पलेट पैटर्न भी हैं।

यहाँ एक उदाहरण है।

SELECT to_char(27, 'S99');

परिणाम:

+27

यहाँ, मैंने S . का उपयोग किया है एक स्थानीय-जागरूक चिह्न जोड़ने के लिए जो संख्या से जुड़ा हुआ है।

इस मामले में यह एक सकारात्मक संख्या थी। यहां एक और उदाहरण दिया गया है जो नकारात्मक मान का उपयोग करता है।

SELECT to_char(-27, 'S99');

परिणाम:

-27

कई अन्य टेम्पलेट पैटर्न हैं जिनका उपयोग हस्ताक्षरित संख्याओं के लिए किया जा सकता है।

उदाहरण के लिए, पोस्टग्रेज में किसी नंबर पर प्लस/माइनस साइन को प्रीपेन्ड करें देखें।

और जैसा कि उल्लेख किया गया है, टेम्प्लेट संशोधक की पूरी सूची के लिए पोस्टग्रेज़ में संख्यात्मक स्वरूपण के लिए टेम्पलेट पैटर्न और संशोधक देखें, जिनका उपयोग आप संख्याओं को स्वरूपित करते समय कर सकते हैं।

डेटा प्रकार

जैसा कि बताया गया है, to_char() फ़ंक्शन अपना परिणाम पाठ . के रूप में आउटपुट करता है ।

आपकी आवश्यकताओं के आधार पर, आपको संख्या को अधिक उपयुक्त डेटा प्रकार में परिवर्तित करना बेहतर लगेगा।

यहां एक उदाहरण दिया गया है जो किसी संख्या को धन डेटा . में रूपांतरित करता है टाइप करें।

SELECT cast(10 as money);

परिणाम:

$10.00

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL विभाजन अनुक्रम कैसे बनाएं?

  2. जेनकिंस का उपयोग करके PostgreSQL दैनिक कार्यों को स्वचालित करना

  3. PostgreSQL में एक तालिका को संदर्भित करने वाली सभी संग्रहीत प्रक्रियाओं को सूचीबद्ध करने के 3 तरीके

  4. कैसे to_char () समारोह का उपयोग किए बिना PostgreSQL में तारीख से साल और महीने निकालने के लिए?

  5. PostgreSQL:टेबल बनाने का समय