MariaDB
 sql >> Database >  >> RDS >> MariaDB

Come funziona CRC32 in MariaDB

In MariaDB, CRC32() è una funzione numerica incorporata che calcola un valore di controllo di ridondanza ciclico e restituisce un valore senza segno a 32 bit.

CRC32 è un popolare algoritmo di checksum utilizzato per rilevare la corruzione dei dati.

Sintassi

La sintassi è questa:

CRC32(expr)

Dove expr dovrebbe essere una stringa e (se possibile) viene trattata come tale se non lo è.

Esempio

Ecco un esempio:

SELECT CRC32('Cat');

Risultato:

+--------------+
| CRC32('Cat') |
+--------------+
|   2786264392 |
+--------------+

Ecco un confronto che utilizza diversi casi:

SELECT
    CRC32('Cat'),
    CRC32('CAT'),
    CRC32('cat');

Risultato:

+--------------+--------------+--------------+
| CRC32('Cat') | CRC32('CAT') | CRC32('cat') |
+--------------+--------------+--------------+
|   2786264392 |    150536482 |   2656977832 |
+--------------+--------------+--------------+

Argomenti non stringa

L'argomento dovrebbe essere una stringa e (se possibile) viene trattato come tale se non lo è.

Esempio:

SELECT
    CRC32('10'),
    CRC32(10);

Risultato:

+-------------+------------+
| CRC32('10') | CRC32(10)  |
+-------------+------------+
|  2707236321 | 2707236321 |
+-------------+------------+

Argomenti nulli

CRC32() restituisce null se l'argomento è null :

SELECT CRC32(null);

Risultato:

+-------------+
| CRC32(null) |
+-------------+
|        NULL |
+-------------+

Argomenti mancanti

Chiamando CRC32() con il numero errato di argomenti o senza argomenti genera un errore:

SELECT CRC32();

Risultato:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CRC32'

E:

SELECT CRC32(10, 2);

Risultato:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CRC32'