SQL道場 文字列関数 MAKE_SET関数
指定されたビットに対する文字列のセットを返すMAKE_SET関数について記載しています。
対応データベース:MySQL
MAKE_SET関数の文法
SELECT MAKE_SET(ビット,文字列1,文字列2 [,文字列3・・・]) FROM テーブル
引数 | ビット | 数値型 |
文字列 | 文字列型 | |
返値 | 文字列型 |
MAKE_SET関数は指定されたビットに対応する文字列のセットを返します。文字列1がビット0に対応し、文字列2がビット1に対応し、文字列3がビット2に対応するという順になります。文字列1、文字列2、… 内の NULL 値は結果に追加されません。
実行例
MySQLの実行例
指定されたビットに対する文字列のセットを返します。
/* 指定されたビットに対する文字列のセットを返すサンプル */
SELECT MAKE_SET(1 | 4,'A','B','C','D');
上記の例では0001(10進数の1)と0100(10進数の4)のOR演算の結果が0101なので、1つめと3つめの文字列が戻ります。