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

MySQL में ZEROFILL (ZF) से संख्याओं को अग्रणी शून्यों से पैड करें

MySQL में ZEROFILL विशेषता (ZF) का उपयोग करके पूर्णांक कॉलम में संग्रहीत संख्याओं को निर्दिष्ट चौड़ाई तक अग्रणी शून्यों (leading zeros) से बाएं पैड किया जा सकता है। यह प्रदर्शन फॉर्मेटिंग, कोड जनरेशन, या फिक्स्ड-चौड़ाई पहचानकर्ताओं के लिए उपयोगी है।

सिंटैक्स

CREATE TABLE table_name (
    column_name INT(display_width) ZEROFILL [NOT NULL] [DEFAULT 0]
);
  • display_width - कुल अंक संख्या (उदाहरण: INT(10) = 10 अंक)
  • ZEROFILL - स्वचालित रूप से UNSIGNED जोड़ता है (ऋणात्मक मान अनुमति नहीं)
  • संग्रहीत मान अपरिवर्तित रहता है; केवल **प्रदर्शन** प्रभावित होता है

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

10 अंकों की चौड़ाई वाला ZEROFILL कॉलम बनाएं:

mysql> CREATE TABLE DemoTable1332 (
    Number INT(10) ZEROFILL NOT NULL DEFAULT 0
);

विभिन्न लंबाई के मान डालें:

mysql> INSERT INTO DemoTable1332 VALUES();        -- डिफ़ॉल्ट 0
mysql> INSERT INTO DemoTable1332 VALUES(1);
mysql> INSERT INTO DemoTable1332 VALUES(10);
mysql> INSERT INTO DemoTable1332 VALUES(100);
mysql> INSERT INTO DemoTable1332 VALUES(554646);

परिणाम देखें:

mysql> SELECT * FROM DemoTable1332;
+------------+
| Number     |
+------------+
| 0000000000 |
| 0000000001 |
| 0000000010 |
| 0000000100 |
| 0000554646 |
+------------+

मुख्य व्यवहार

महत्वपूर्ण प्रतिबंध

  • केवल पूर्णांक प्रकार: TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT
  • स्वचालित UNSIGNED: ZEROFILL नकारात्मक मानों की अनुमति नहीं देता
  • केवल प्रदर्शन: संग्रहण, तुलना, गणना वास्तविक मान पर होती है
  • display_width (INT(10)) स्टोरेज आकार **नहीं** बदलता (हमेशा 4 बाइट्स)

उपयोग के मामले

  • चालान/ऑर्डर नंबर: INV-000001, ORD-000123
  • कर्मचारी/छात्र ID: EMP00045, STU00123
  • फिक्स्ड-चौड़ाई कोड: उत्पाद SKU, बैच नंबर
  • लिगेसी सिस्टम इंटीग्रेशन जहां फिक्स्ड चौड़ाई आवश्यक

आधुनिक विकल्प: एप्लिकेशन लेयर फॉर्मेटिंग

-- SQL में (MySQL 8.0+)
SELECT LPAD(CAST(Number AS CHAR), 10, '0') AS PaddedNumber FROM DemoTable1332;

-- एप्लिकेशन कोड में (Python, Java, JS, आदि)
String.format("%010d", number)  // Java
f"{number:010d}"                // Python 3.6+
number.toString().padStart(10, '0')  // JavaScript

चेतावनी

ZEROFILL MySQL 8.0 में **डिप्रिकेटेड** है और भविष्य के संस्करण में हटाया जा सकता है। नए प्रोजेक्ट्स के लिए एप्लिकेशन-लेयर फॉर्मेटिंग या LPAD() उपयोग करें।

  1. - MySQL में LIKE ऑपरेटर को IN() की तरह कैसे उपयोग करें?

    MySQL में LIKE ऑपरेटर को IN() की तरह उपयोग करने के लिए COUNT(), IF() और LIKE का संयोजन उपयोग करें। यह पैटर्न मिलान की गणना करने के लिए उपयोगी है। उदाहरण परिदृश्य विषय कॉलम में MySQL, Java, MongoDB शब्दों की घटनाएं गिनना। तालिका और डेटा mysql> CREATE TABLE DemoTable (Subject VARCHAR(80)); mysql&

  1. - MySQL में COALESCE() से खाली पंक्ति के लिए डिफ़ॉल्ट मान सेट करें

    COALESCE() फ़ंक्शन का उपयोग करके NULL मानों को क्वेरी परिणाम में डिफ़ॉल्ट मान से बदल सकते हैं। यह टेबल डेटा नहीं बदलता, केवल आउटपुट प्रभावित करता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1863 (FirstName VARCHAR(20)); डेटा डालें mysql> INSERT INTO DemoTable1863 VALUES(Chris); mysql> INS

  1. - MySQL में IFNULL का उपयोग करके NULL मानों को 1 के रूप में प्रदर्शित/अपडेट करें

    MySQL में NULL मानों को संभालना: IFNULL() और COALESCE() MySQL में IFNULL() फ़ंक्शन का उपयोग करके आप NULL मानों को डिफ़ॉल्ट मान से बदल सकते हैं। यह लेख दिखाता है कि कैसे NULL मानों को 1 से अपडेट करें और उन्हें प्रदर्शित करें। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) NULL मानों सहित डेटा

© कॉपीराइट https://in.wsxdn.com सर्वाधिकार सुरक्षित
डाला गया मानसंग्रहीत मानप्रदर्शित मान (ZEROFILL)
110000000001
1001000000000100
5546465546460000554646
123456789012345678901234567890 (कोई पैडिंग नहीं)