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

MySQLでBIN()関数と同じ出力を返す関数は?CONV(N,10,2)との関係を解説

MySQLのBIN()関数は、10進数(DECIMAL)の数値を2進数の値に変換し、その結果をバイナリ文字列として返す関数です。実は、この動作はCONV(N,10,2)関数と完全に同一であり、両者はまったく同じ出力を返します。つまり、BIN()関数の代わりにCONV(N,10,2)を使っても、同じ結果が得られます。

CONV(N,10,2)関数の引数の意味

CONV(N,10,2)関数の各引数は以下のような役割を持っています。

  • N:変換対象となる数値
  • 10:Nの現在の基数(10進数=DECIMAL)を表す
  • 2:Nを2進数の文字列に変換することを指定する

実行例

次の例では、BIN()関数とCONV(N,10,2)関数が同じ結果「1111」を返すことを確認できます。

mysql> Select BIN(15);
+---------+
| BIN(15) |
+---------+
| 1111    |
+---------+
1 row in set (0.00 sec)

mysql> Select CONV(15,10,2);
+---------------+
| CONV(15,10,2) |
+---------------+
| 1111          |
+---------------+
1 row in set (0.00 sec)

このように、10進数の「15」を2進数に変換した場合、BIN(15)でもCONV(15,10,2)でも同じ「1111」が出力されます。用途に応じて使い分けることもできますが、単純に10進数から2進数への変換を行うだけであれば、より直感的なBIN()関数を使用するのが一般的です。

  1. MySQLのTRIM()関数とは?文字列から接頭辞・接尾辞を削除する方法を解説

    MySQLのTRIM()関数は、文字列から特定の接頭辞(プレフィックス)や接尾辞(サフィックス)、あるいはその両方を取り除くために使用される関数です。不要な記号や余分な文字を文字列の先頭・末尾から除去したい場合に非常に便利です。TRIM()関数の動作は、以下の構文を見るとよく理解できます。構文TRIM([{BOTH | LEADING | TRAILING} [str_to_remove] FROM] string)各引数の意味は次のとおりです。BOTH:文字列の左側(先頭)と右側(末尾)の両方から指定した文字列を削除します。LEADING:先頭(左側)に付いている文字列のみを削除します。TR

  2. MySQLでCHAR()関数の逆の処理を行う方法|ASCII()とORD()の違いを解説

    MySQLにおいて、CHAR()関数の逆の働きをするのは ASCII() 関数と ORD() 関数です。CHAR() は数値(文字コード)を文字に変換する関数ですが、ASCII() は引数の文字列の左端の文字に対応する数値(ASCIIコード)を返し、ORD() は左端の文字の文字コードを返します。 ASCII()とORD()の違い どちらも文字から数値への変換を行う点は共通していますが、以下のような違いがあります。 ASCII():シングルバイト文字専用。マルチバイト文字を渡すと警告が出て64を返します。 ORD():マルチバイト文字にも対応しており、最初のバイトの値に基づいて計算された文字