CAST और CONV के साथ BigInt कन्वर्जन
हेक्साडेसिमल स्ट्रिंग को BIGINT (64-बिट अनसाइन्ड) में कन्वर्ट करने के लिए:
SELECT CAST(CONV('yourColumnName', 16, 10) AS UNSIGNED INTEGER) AS alias
FROM yourTableName;
यह आर्टिकल 1005073077 के समान है - हेक्साडेसिमल (बेस 16) से डेसिमल (बेस 10) कन्वर्जन।
उदाहरण: टेबल और डेटा
mysql> CREATE TABLE castTypeToBigIntDemo (
-> Id INT NOT NULL AUTO_INCREMENT,
-> Value VARCHAR(100),
-> PRIMARY KEY(Id)
-> );
mysql> INSERT INTO castTypeToBigIntDemo(Value)
-> VALUES('AB5'),('55244A5562C5566354'),('4546575765ABD78'),
-> ('5979787DEFAB'),('86868686856ABD');
कन्वर्जन क्वेरी
mysql> SELECT CAST(CONV(Value, 16, 10) AS UNSIGNED INTEGER) AS BigNumber
-> FROM castTypeToBigIntDemo;
आउटपुट:
+----------------------+ | BigNumber | +----------------------+ | 2741 | | 18446744073709551615 | | 311985829366644088 | | 98378247434155 | | 37865559219858109 | +----------------------+
नोट: UNSIGNED INTEGER MySQL में 64-बिट अनसाइन्ड इंटीजर (BIGINT के बराबर) देता है। बहुत बड़े हेक्स मानों के लिए यह अधिकतम मान (18446744073709551615) पर कैप हो सकता है।