BIT型

MySQL で利用可能なデータ型の中の1つである BIT 型の使い方について解説します。

(Last modified: )

BIT型について

BIT型はビット値を格納するために使われるデータ型です。

BIT(M)

M 保存できるビット数。 M は 1 から 64。

ビット値は値を 0 と 1 を使って表します。ビット数が 1 の場合 0 と 1 のどちらかとなり、ビット数が 2 の場合、00 01 10 11 のいずれかとなります。なお MySQL で ビット値を記述する場合、次の3通りのいずれかを使用します。

b'0110'
B'0110'
0b0110

ビット値はバイナリー形式の値ですが、数値として扱う場合には 0 を加算して数値に変換するか、 CAST 関数を数値型に変換します。( CAST 関数は値を指定したデータ型に変更するためのもので、 UNSIGNED を指定した場合は UNSIGNED INTEGER 型に変換されます)。

b'0110'+0
CAST(b'0110' AS UNSIGNED);

それでは実際に試してみます。 BIT 型のカラムを持つテーブルを作成してみます。

create table bittest(val bit(6));

BIT型について(1)

テーブルにデータを追加します。

insert into bittest values(b'000001');
insert into bittest values(b'011101');
insert into bittest values(b'101010');

BIT型について(2)

バイナリー形式の値なのでデータを取得して表示するために次のように取得してみました。

select bin(val), hex(val), val+0 from bittest;

BIT型について(3)

bin 関数では値を 2 進数で表します。 hex 関数では値を 16 進数で表します。 val+0 では BIT 型の値を数値に変換して取得しています。

-- --

MySQL で利用可能なデータ型の中でBIT型の使い方について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。