CHARSET関数/COLLATION関数(文字列の文字セットと照合順序を取得する)

MySQL では CHARSET 関数を使用することで引数に指定した文字列の文字セットを取得することができます。また COLLATION 関数を使用することで引数に指定した文字列の照合順序を取得することができます。ここでは MySQL における CHARSET 関数および COLLATION 関数の使い方について解説します。

(Last modified: )

CHARSET関数およびCOLLATION関数の使い方

CHARSET 関数は引数に指定した値の文字セットを取得するために使用します。また COLLATION 関数は照合順序を取得するために使用します。書式は次の通りです。

CHARSET(str)
COLLATION(str)

引数に指定した文字列( str )の文字セットと照合順序を取得します。

-- --

それでは実際に試してみます。次のようなテーブルを作成しました。テーブルに含まれるカラム毎に文字セットと照合順序を設定しています。(詳しくは「カラム毎に文字セットと照合順序を指定してテーブルを作成する」を参照してください)。

create table strtest (
str1 varchar(10) character set cp932 collate cp932_bin,
str2 varchar(10) character set utf8mb4 collate utf8mb4_0900_ai_ci,
str3 varchar(10) character set latin1 collate latin1_swedish_ci
);

MySQL/CHARSET 及び COLLATION 関数の使い方(1)

テーブルには次のようなデータを格納しました。

insert into strtest values ('abc', 'abc', 'abc');

MySQL/CHARSET 及び COLLATION 関数の使い方(2)

それではカラムに格納されている値の文字セットと照合順序を取得してください。次のように実行してください。

select charset(str1),collation(str1) from strtest;
select charset(str2),collation(str2) from strtest;
select charset(str3),collation(str3) from strtest;

MySQL/CHARSET 及び COLLATION 関数の使い方(3)

それぞれのカラムに格納されている値の文字セットおよび照合順序を取得することができました。

-- --

CHARSET 関数および COLLATION 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。