MySQL में, CRC32() फ़ंक्शन एक चक्रीय अतिरेक चेक मान की गणना करता है और 32-बिट अहस्ताक्षरित मान देता है।
CRC का अर्थ है चक्रीय अतिरेक जांच . CRC एक त्रुटि का पता लगाने वाला कोड है जिसका उपयोग आमतौर पर डिजिटल नेटवर्क और स्टोरेज डिवाइस में कच्चे डेटा में आकस्मिक परिवर्तनों का पता लगाने के लिए किया जाता है (हालाँकि, यह आवश्यक रूप से दुर्भावनापूर्ण या जानबूझकर किए गए परिवर्तनों से बचाव नहीं करता है)।
सिंटैक्स
वाक्य रचना इस प्रकार है:
CRC32(expr)
जहां expr एक स्ट्रिंग है। यदि तर्क एक स्ट्रिंग नहीं है, तो MySQL इसे वैसे भी एक के रूप में मानता है (या तो वह, या आपको एक त्रुटि मिलेगी)। अगर तर्क NULL है , फिर NULL लौटा दिया गया है।
उदाहरण 1 - मूल उपयोग
CRC32() . को प्रदर्शित करने के लिए यहां एक बुनियादी उदाहरण दिया गया है एक नमूना स्ट्रिंग के लिए रिटर्न।
SELECT CRC32('Bob');
परिणाम:
+--------------+
| CRC32('Bob') |
+--------------+
| 3448174496 |
+--------------+
उदाहरण 2 - केस संवेदनशीलता
आपके द्वारा उपयोग किए जाने वाले मामले के आधार पर आपको एक अलग परिणाम मिलेगा।
SELECT
CRC32('Bob'),
CRC32('bob'),
CRC32('BOB');
परिणाम:
+--------------+--------------+--------------+
| CRC32('Bob') | CRC32('bob') | CRC32('BOB') |
+--------------+--------------+--------------+
| 3448174496 | 4123767104 | 1668084682 |
+--------------+--------------+--------------+
उदाहरण 3 - संख्याएं
जैसा कि उल्लेख किया गया है, तर्क को एक स्ट्रिंग के रूप में माना जाता है, भले ही वह वास्तव में एक स्ट्रिंग न हो। यहां एक उदाहरण दिया गया है जहां मैं फ़ंक्शन को दो बार कॉल करता हूं। पहली बार जब मैं इसे कॉल करता हूं तो मैं एक नंबर में पास करता हूं (123 ), और दूसरी बार जब मैं एक स्ट्रिंग में गुजरता हूं ('123' )।
SELECT
CRC32(123),
CRC32('123');
चुनें परिणाम:
+------------+--------------+
| CRC32(123) | CRC32('123') |
+------------+--------------+
| 2286445522 | 2286445522 |
+------------+--------------+
जैसा कि आप देख सकते हैं, हमें दोनों मानों के लिए समान परिणाम मिलते हैं।
उदाहरण 4 - शून्य मान
शून्य मान NULL लौटाते हैं ।
SELECT CRC32(NULL);
परिणाम:
+-------------+ | CRC32(NULL) | +-------------+ | NULL | +-------------+