मेरे पास Unique_id नाम का एक कॉलम है जो मान ले सकता है,

16-01
16-10,
16-250,
16-1594

आदि

16 वर्ष है (उदाहरण 2016) और 01 इस वर्ष में कुछ के लिए एक गिनती है। मैं पहले इन्सर्ट ट्रिगर का उपयोग करके इस प्रारूप को प्राप्त करने का प्रबंधन करता हूं। अब मैं गिनती संख्या में 4 चार प्रारूप रखना चाहता हूं जैसे

16-0001
16-0010
16-0250
16-1594

मैं इस स्वरूपण को कैसे प्रबंधित कर सकता हूं?

2
Patroklos Patroklou 22 जून 2016, 09:38

2 जवाब

सबसे बढ़िया उत्तर

आप LPAD(yourcolumn, 4, '0') का उपयोग कर सकते हैं;)

select
    concat(left(data,3), lpad(substring(data, 4), 4, '0'))
from test

डेमो यहाँ

और मैनुअल यहां देखें।

2
Blank 22 जून 2016, 10:05

उपयोग:

UPDATE Table1
SET Column1=concat(left(Column1,3), lpad(substring(Column1, 4), 4, '0'));

एसक्यूएल फिडल

वैकल्पिक रूप से, RegEx का उपयोग MYSQL UDF का उपयोग करके प्रतिस्थापित करने के लिए किया जा सकता है।

2
Ani Menon 22 जून 2016, 11:29