En MySQL, el CRC32()
La función calcula un valor de comprobación de redundancia cíclica y devuelve un valor sin signo de 32 bits.
CRC significa Comprobación de redundancia cíclica . Un CRC es un código de detección de errores comúnmente utilizado en redes digitales y dispositivos de almacenamiento para detectar cambios accidentales en datos sin procesar (aunque no necesariamente protege contra cambios maliciosos o intencionales).
Sintaxis
La sintaxis es así:
CRC32(expr)
Donde expr
es una cadena. Si el argumento no es una cadena, MySQL lo trata como tal de todos modos (o eso, o obtendrá un error). Si el argumento es NULL
, luego NULL
es devuelto.
Ejemplo 1:uso básico
Aquí hay un ejemplo básico para demostrar qué CRC32()
regresa para una cadena de muestra.
SELECT CRC32('Bob');
Resultado:
+--------------+ | CRC32('Bob') | +--------------+ | 3448174496 | +--------------+
Ejemplo 2:Sensibilidad entre mayúsculas y minúsculas
Obtendrá un resultado diferente, dependiendo del caso que utilice.
SELECT CRC32('Bob'), CRC32('bob'), CRC32('BOB');
Resultado:
+--------------+--------------+--------------+ | CRC32('Bob') | CRC32('bob') | CRC32('BOB') | +--------------+--------------+--------------+ | 3448174496 | 4123767104 | 1668084682 | +--------------+--------------+--------------+
Ejemplo 3 – Números
Como se mencionó, el argumento se trata como una cadena, incluso si en realidad no es una cadena. Aquí hay un ejemplo donde llamo a la función dos veces. La primera vez que lo llamo paso un número (123
), y la segunda vez que paso una cadena ('123'
).
SELECT CRC32(123), CRC32('123');
Resultado:
+------------+--------------+ | CRC32(123) | CRC32('123') | +------------+--------------+ | 2286445522 | 2286445522 | +------------+--------------+
Como puede ver, obtenemos el mismo resultado para ambos valores.
Ejemplo 4:valores NULL
Los valores nulos devuelven NULL
.
SELECT CRC32(NULL);
Resultado:
+-------------+ | CRC32(NULL) | +-------------+ | NULL | +-------------+