PDF (US Ltr)
- 26.8Mb
PDF (A4)
- 26.8Mb
CONVERT()
を使用すると、異なる文字セット間でデータを変換できます。構文は次のとおりです。
CONVERT(expr USING transcoding_name)
MySQL では、トランスコーディング名は対応する文字セット名と同じです。
例:
SELECT CONVERT(_latin1'Müller' USING utf8);
INSERT INTO utf8table (utf8column)
SELECT CONVERT(latin1field USING utf8) FROM latin1table;
CONVERT(... USING ...)
は、標準 SQL の仕様に基づき実装されています。
CAST()
を使用し、文字列を別の文字セットに変換することもできます。構文は次のとおりです。
CAST(character_string AS character_data_type CHARACTER SET charset_name)
例:
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8);
CHARACTER SET
を指定せずに CAST()
を使用した場合、文字セットと照合順序は character_set_connection
および collation_connection
システム変数で定義されます。CHARACTER SET X
を指定して CAST()
を使用した場合、文字セットはX
、照合順序は X
のデフォルト照合順序になります。
CONVERT()
または CAST()
呼び出し内では COLLATE
句を使用できませんが、呼び出し外では使用できます。たとえば、CAST(... COLLATE ...)
は無効ですが、CAST(...) COLLATE ...
は有効です。
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8) COLLATE utf8_bin;