MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL MAKE_SET()関数とは何ですか?


MySQL MAKE_SET()関数は、ビット単位の10進数をバイナリに変換し、最初の文字列を使用してその数値に設定されたすべてのビットの設定値(つまり、コンマ区切りの値のリスト)を返します。下位ビットの場合は2番目の文字列、次に低いビットの場合は2番目の文字列など。

構文
MAKE_SET(bits, str1, str2,…)
ここ、

    ビットは式であり、10進数または2進数の値を持つことができます。
  • Str1、str2…は文字列のリストです。
mysql> Select MAKE_SET(1|2|4, 'Tutorials','Point','.com');

+---------------------------------------------+
| MAKE_SET(1|2|4, 'Tutorials','Point','.com') |
+---------------------------------------------+
| Tutorials,Point,.com                        |
+---------------------------------------------+

1 row in set (0.00 sec)

ここで、上記の例では、最初のビットは1、つまり001であり、右端の桁は1であるため、「チュートリアル」を返します。2番目のビットは2、つまり010であり、中央の桁は1であるため、「ポイント」を返します。 'および3番目のビットは4、つまり100であり、左端の桁は1であるため、'。com'を返します。


  1. MySQLのランク関数?

    rank()関数を使用して、結果セットのパーティション内のすべての行にランクを付けることができます。 まず、テーブルを作成しましょう- mysql> create table RankDemo mysql> ( mysql> id int mysql> ); Query OK, 0 rows affected (0.53 sec) テーブルにレコードを挿入します。 mysql> insert into RankDemo values(1); Query OK, 1 row affected (0.19 sec) mysql>

  2. MySQLのCHAR()の逆関数は何ですか

    CHAR()の逆関数は、MySQLのASCII()またはORD()です。ここで、ASCII()は左端の文字の数値を返しますが、ORD()は引数の左端の文字の文字コードを返します まずテーブルを作成しましょう- mysql> create table DemoTable (    Value int,    Value1 char(1),    Value2 char(1) ); Query OK, 0 rows affected (0.80 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mys