CHARSET
Takes a string argument and returns the character set of that argument.
Syntax
CHARSET(string)
Arguments
String
Return Type
Character set
Examples
SELECT CHARSET(char(189)); **** +--------------------+ | CHARSET(char(189)) | +--------------------+ | binary | +--------------------+ 1 row in set (0.06 sec)
SELECT CHARSET(char(189 using utf8)); **** +-------------------------------+ | CHARSET(char(189 using utf8)) | +-------------------------------+ | utf8 | +-------------------------------+ 1 row in set (0.06 sec)
Implicit Collation
When character_set_server
is set to utf8
, string literals with characters using 4-byte encoding are implicitly assigned binary collation and processed as a sequence of bytes rather than characters. This implicit conversion to binary collation causes string functions to return unexpected results. To avoid using implicit binary collation, either use explicit type casting or use database columns defined with the utf8mb4
character set.
For more information, refer to Implicit Collation in Special Cases.