sql >> Base de Datos >  >> RDS >> Mysql

[MySQL]:¿Qué es el método de intercalación?

Una cadena en MySQL tiene un conjunto de caracteres y una intercalación . Utf8 es un conjunto de caracteres y utf8_bin es una de sus colaciones. La intercalación determina cómo MySQL compara las cadenas.

Por ejemplo, aquí hay dos formas de comparar una cadena UTF8:

select case when 'test' = 'TEST' collate utf8_bin 
       then 'true' else 'false' end,
       case when 'test' = 'TEST' collate utf8_roman_ci 
       then 'true' else 'false' end

El primero usa la intercalación utf8_bin, que distingue entre mayúsculas y minúsculas. El segundo usa utf8_roman_ci, que no distingue entre mayúsculas y minúsculas.

Se puede encontrar una lista de todos los conjuntos de caracteres y colaciones en:

show character set
show collation

latin1_swedish_ci es la intercalación predeterminada (MySQL se desarrolló originalmente en Suecia), esto también es válido para MariaDB.