CONCAT() और SUBSTRING_INDEX() का उपयोग करके दशमलव से पहले का भाग बदलना
इसके लिए CONCAT() के साथ SUBSTRING_INDEX() का उपयोग करें। पहले टेबल बनाएं:
mysql> create table DemoTable1424 ( Value varchar(60) ); Query OK, 0 rows affected (0.56 sec)
रिकॉर्ड डालें:
mysql> insert into DemoTable1424 values('567.78483733'); Query OK, 1 row affected (0.78 sec)
mysql> insert into DemoTable1424 values('1023.45252443'); Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1424 values('7893322.5635543434'); Query OK, 1 row affected (0.35 sec)
mysql> insert into DemoTable1424 values('90944.665665'); Query OK, 1 row affected (0.14 sec)
सभी रिकॉर्ड देखें:
mysql> select * from DemoTable1424;
आउटपुट:
+--------------------+ | Value | +--------------------+ | 567.78483733 | | 1023.45252443 | | 7893322.5635543434 | | 90944.665665 | +--------------------+ 4 rows in set (0.00 sec)
डॉट से पहले स्ट्रिंग के भाग को बदलने की क्वेरी:
mysql> update DemoTable1424 set Value=concat('10000.', substring_index(Value, '.', -1)); Query OK, 4 rows affected (0.13 sec) Rows matched: 4 Changed: 4 Warnings: 0
फिर से रिकॉर्ड जांचें:
mysql> select * from DemoTable1424;
आउटपुट:
+------------------+ | Value | +------------------+ | 10000.78483733 | | 10000.45252443 | | 10000.5635543434 | | 10000.665665 | +------------------+ 4 rows in set (0.00 sec)
व्याख्या: SUBSTRING_INDEX(Value, '.', -1) अंतिम डॉट के बाद का भाग (दशमलव भाग) निकालता है। CONCAT('10000.', ...) इसे '10000.' से पहले जोड़ देता है। UPDATE सभी पंक्तियों पर इसे लागू करता है। यह दशमलव भाग को संरक्षित करते हुए पूर्णांक भाग को स्थिर मान से बदलने का एक तरीका है।