Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में DECIMAL कैसे संग्रहीत करें?

DECIMAL(कुल_अंक, दशमलव_अंक) सिंटैक्स

MySQL में सटीक दशमलव मान संग्रहीत करने के लिए DECIMAL(p, s) डेटा प्रकार का उपयोग करें जहां:

  • p (Precision): कुल अंक (दशमलव बिंदु के दोनों ओर)
  • s (Scale): दशमलव बिंदु के दाएं अंक

उदाहरण: DECIMAL(4,2)

  • कुल 4 अंक, 2 दशमलव के बाद
  • अर्थ: 2 अंक दशमलव से पहले, 2 बाद में
  • रेंज: -99.99 से 99.99 (साइन) या 0 से 99.99 (अनसाइन)

व्यावहारिक उदाहरण

1. टेबल बनाएं

mysql> CREATE TABLE DecimalDemo (
    -> Amount DECIMAL(4,2)
    -> );
Query OK, 0 rows affected (0.47 sec)

2. अमान्य मान (आउट ऑफ रेंज)

mysql> INSERT INTO DecimalDemo VALUES(123.4);    -- 3 अंक दशमलव से पहले (अधिकतम 2)
ERROR 1264 (22003): Out of range value for column 'Amount' at row 1

mysql> INSERT INTO DecimalDemo VALUES(1234);     -- कोई दशमलव नहीं, 4 अंक पूर्णांक
ERROR 1264 (22003): Out of range value for column 'Amount' at row 1

mysql> INSERT INTO DecimalDemo VALUES(1234.56);  -- 4 अंक पूर्णांक + 2 दशमलव
ERROR 1264 (22003): Out of range value for column 'Amount' at row 1

3. वैध मान

mysql> INSERT INTO DecimalDemo VALUES(12.34);    -- ठीक
mysql> INSERT INTO DecimalDemo VALUES(12.4);     -- 12.40 बन जाता है
mysql> INSERT INTO DecimalDemo VALUES(.2345);    -- 0.23 (चेतावनी: काटा गया)
mysql> INSERT INTO DecimalDemo VALUES(1.234);    -- 1.23 (चेतावनी: काटा गया)

4. संग्रहीत डेटा

mysql> SELECT * FROM DecimalDemo;
+--------+
| Amount |
+--------+
| 12.34  |
| 12.40  |
| 0.23   |
| 1.23   |
+--------+
4 rows in set (0.00 sec)

महत्वपूर्ण नियम

  1. कुल अंक = पूर्णांक भाग + दशमलव भाग
  2. दशमलव भाग अतिरिक्त अंक काट देता है (चेतावनी के साथ)
  3. पूर्णांक भाग अतिरिक्त अंक → त्रुटि (आउट ऑफ रेंज)
  4. DECIMAL(p,s) सटीक अंकगणित के लिए (फ्लोट/डबल के विपरीत)

आम वित्तीय उपयोग

उपयोगप्रकाररेंज
मुद्रा (रुपये/डॉलर)DECIMAL(10,2)-99,999,999.99 से 99,999,999.99
बड़ी मुद्राDECIMAL(15,2)-999,999,999,999.99 से 999...
क्रिप्टो (8 दशमलव)DECIMAL(20,8)बड़ी रेंज, 8 दशमलव
प्रतिशत (4 दशमलव)DECIMAL(5,4)-9.9999 से 9.9999

FLOAT/DOUBLE vs DECIMAL

  • FLOAT/DOUBLE: अनुमानित, तेज, वैज्ञानिक गणना
  • DECIMAL: **सटीक**, धीमा, **वित्तीय/मौद्रिक डेटा के लिए अनिवार्य**
  1. - MySQL SUM फ़ंक्शन का उपयोग करके दशमलव मान जोड़ना

    MySQL में SUM() फ़ंक्शन के साथ दशमलव मानों का योग निकालना SUM() एग्रीगेट फ़ंक्शन संख्यात्मक कॉलम के सभी मानों का योग निकालता है। यह DECIMAL डेटा प्रकार के साथ सटीकता बनाए रखते हुए पूरी तरह काम करता है। व्यावहारिक उदाहरण तालिका बनाना (DECIMAL प्रकार के साथ) CREATE TABLE DemoTable ( Money DECIM

  1. - MySQL में DECIMAL डेटा प्रकार से संख्या को दशमलव के रूप में संग्रहीत करें

    MySQL में संख्याओं को सटीक दशमलव परिशुद्धता के साथ संग्रहीत करने के लिए अलग से फॉर्मेट करने की आवश्यकता नहीं है - DECIMAL डेटा प्रकार का उपयोग करें। यह निश्चित-परिशुद्धता अंकगणित प्रदान करता है और वित्तीय/मौद्रिक डेटा के लिए मानक विकल्प है। सिंटैक्स DECIMAL(precision, scale) Precision (कुल अंक): 1

  1. - MySQL डेटाबेस में PayPal दशमलव राशि संग्रहीत करना

    DECIMAL(10,2) से मुद्रा राशि संग्रहीत करना PayPal जैसी भुगतान प्रणालियों के लिए DECIMAL(10,2) उपयुक्त है: 8 अंक पूर्णांक भाग + 2 दशमलव स्थान। तालिका निर्माण ); बड़ी राशियाँ डालना INSERT INTO DemoTable1491 VALUES(35363738.50); परिणाम +-------------+ | Amount | +-------------+ | 987664.50