sql >> Database >  >> RDS >> Mysql

MySQL CRC32() Functie – Voorbeelden

In MySQL is de CRC32() functie berekent een cyclische redundantiecontrolewaarde en retourneert een 32-bits waarde zonder teken.

CRC staat voor Cyclic Redundancy Check . Een CRC is een foutdetectiecode die vaak wordt gebruikt in digitale netwerken en opslagapparaten om onbedoelde wijzigingen in onbewerkte gegevens te detecteren (hoewel het niet noodzakelijkerwijs beschermt tegen kwaadwillende of opzettelijke wijzigingen).

Syntaxis

De syntaxis gaat als volgt:

CRC32(expr)

Waar expr is een string. Als het argument geen string is, behandelt MySQL het hoe dan ook als een string (ofwel dat, of je krijgt een foutmelding). Als het argument NULL is , dan NULL wordt geretourneerd.

Voorbeeld 1 – Basisgebruik

Hier is een eenvoudig voorbeeld om te demonstreren wat CRC32() retourneert voor een voorbeeldtekenreeks.

SELECT CRC32('Bob');

Resultaat:

+--------------+
| CRC32('Bob') |
+--------------+
|   3448174496 |
+--------------+

Voorbeeld 2 – Hoofdlettergevoeligheid

Je krijgt een ander resultaat, afhankelijk van het geval dat je gebruikt.

SELECT 
  CRC32('Bob'),
  CRC32('bob'),
  CRC32('BOB');

Resultaat:

+--------------+--------------+--------------+
| CRC32('Bob') | CRC32('bob') | CRC32('BOB') |
+--------------+--------------+--------------+
|   3448174496 |   4123767104 |   1668084682 |
+--------------+--------------+--------------+

Voorbeeld 3 – Cijfers

Zoals vermeld, wordt het argument behandeld als een string, zelfs als het niet echt een string is. Hier is een voorbeeld waarbij ik de functie twee keer aanroep. De eerste keer dat ik het bel, geef ik een nummer door (123 ), en de tweede keer dat ik een string doorgeef ('123' ).

SELECT 
  CRC32(123),
  CRC32('123');

Resultaat:

+------------+--------------+
| CRC32(123) | CRC32('123') |
+------------+--------------+
| 2286445522 |   2286445522 |
+------------+--------------+

Zoals je kunt zien, krijgen we hetzelfde resultaat voor beide waarden.

Voorbeeld 4 – NULL-waarden

Null-waarden retourneren NULL .

SELECT CRC32(NULL);

Resultaat:

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

  1. 7 dingen die u moet weten over compartimenten op Oracle Cloud Infrastructure

  2. Navigeren door de Access 2019-openingswerkruimte

  3. Django-ontwikkelingsdatabase wijzigen van de standaard SQLite naar PostgreSQL

  4. Android:Sqlite-fout - (1) bijna null:syntaxisfout