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

Hvordan CRC32 virker i MariaDB

I MariaDB, CRC32() er en indbygget numerisk funktion, der beregner en cyklisk redundanskontrolværdi og returnerer en 32-bit usigneret værdi.

CRC32 er en populær kontrolsum-algoritme, der bruges til at opdage datakorruption.

Syntaks

Syntaksen ser sådan ud:

CRC32(expr) 

Hvor expr forventes at være en streng og (hvis muligt) behandles som en, hvis den ikke er det.

Eksempel

Her er et eksempel:

SELECT CRC32('Cat'); 

Resultat:

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

Her er en sammenligning med forskellige tilfælde:

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

Resultat:

+--------------+-------------+--------------+| CRC32('Kat') | CRC32('CAT') | CRC32('kat') |+--------------+--------------+------ --+| 2786264392 | 150536482 | 2656977832 |+--------------+--------------+-------------+ 

Ikke-strenge-argumenter

Argumentet forventes at være en streng og (hvis muligt) behandles som en, hvis det ikke er det.

Eksempel:

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

Resultat:

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

Nul-argumenter

CRC32() returnerer null hvis argumentet er null :

SELECT CRC32(null); 

Resultat:

+--------------+| CRC32(nul) |+-------------+| NULL |+-------------+

Manglende argumenter

Kalder CRC32() med det forkerte antal argumenter eller uden argumenter resulterer i en fejl:

SELECT CRC32(); 

Resultat:

FEJL 1582 (42000):Forkert parameterantal i kaldet til den oprindelige funktion 'CRC32'

Og:

SELECT CRC32(10, 2); 

Resultat:

FEJL 1582 (42000):Forkert parameterantal i kaldet til den oprindelige funktion 'CRC32'

  1. Django unikke sammen begrænsningsfejl?

  2. DATE() Eksempler – MySQL

  3. Langsom bulk indsats til bord med mange indekser

  4. SQL Server 2016:Opret en lagret procedure