Een string in MySQL heeft een tekenset en een sortering . Utf8 is een tekenset en utf8_bin is een van de verzamelingen. De sortering bepaalt hoe MySQL strings vergelijkt.
Hier zijn bijvoorbeeld twee manieren om een UTF8-tekenreeks te vergelijken:
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
De eerste gebruikt de sortering utf8_bin, die hoofdlettergevoelig is. De tweede gebruikt utf8_roman_ci, wat niet hoofdlettergevoelig is.
Een lijst van alle tekensets en sorteringen is te vinden met:
show character set
show collation
latin1_swedish_ci
is de standaardsortering (MySQL is oorspronkelijk ontwikkeld in Zweden), dit geldt ook voor MariaDB.