W MariaDB, CRC32() to wbudowana funkcja numeryczna, która oblicza wartość cyklicznej kontroli nadmiarowości i zwraca 32-bitową wartość bez znaku.
CRC32 to popularny algorytm sum kontrolnych używany do wykrywania uszkodzeń danych.
Składnia
Składnia wygląda tak:
CRC32(expr)
Gdzie expr ma być ciągiem i (jeśli to możliwe) jest traktowany jako jeden, jeśli tak nie jest.
Przykład
Oto przykład:
SELECT CRC32('Cat'); Wynik:
+--------------+
| CRC32('Cat') |
+--------------+
| 2786264392 |
+--------------+ Oto porównanie w różnych przypadkach:
SELECT
CRC32('Cat'),
CRC32('CAT'),
CRC32('cat'); Wynik:
+--------------+--------------+--------------+
| CRC32('Cat') | CRC32('CAT') | CRC32('cat') |
+--------------+--------------+--------------+
| 2786264392 | 150536482 | 2656977832 |
+--------------+--------------+--------------+ Argumenty inne niż ciągi
Argument ma być łańcuchem i (jeśli to możliwe) jest traktowany jako jeden, jeśli tak nie jest.
Przykład:
SELECT
CRC32('10'),
CRC32(10); Wynik:
+-------------+------------+
| CRC32('10') | CRC32(10) |
+-------------+------------+
| 2707236321 | 2707236321 |
+-------------+------------+ Argumenty zerowe
CRC32() zwraca null jeśli argument jest null :
SELECT CRC32(null); Wynik:
+-------------+ | CRC32(null) | +-------------+ | NULL | +-------------+
Brakujące argumenty
Wywołanie CRC32() z niewłaściwą liczbą argumentów lub bez żadnych argumentów powoduje błąd:
SELECT CRC32(); Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CRC32'
Oraz:
SELECT CRC32(10, 2); Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CRC32'