SQL Serverのビット&ブールデータ型

SQL Serverのビットデータ型は1ビット数値データ型です。 また、Sql ServerのBooleanデータ型としても使用されます。 Bitデータ型には、0、1、またはNULLのみを格納できます。 Booleanデータ型として使用される場合、0はfalseとして扱われ、1はtrueとして扱われます。

Bit列の記憶域の最適化

bitデータ型に必要な記憶域は1ビットのみです。 しかし、バイトには8ビットが含まれています。

SQL Serverは、他のビット列を単一のバイトにマージすることにより、ビット列の記憶域を最適化します。 テーブルに8個以下のビット列がある場合、SQL serverはそれらを1バイトに結合します。 9つの最大16ビットの列がある場合は、それらを2バイトに結合します。

Booleanデータ型

booleanは、TrueまたはFalseのいずれかの値を格納できるデータ型です。 SQL Serverには個別のBooleanデータ型はありません。 したがって、代わりにビットデータ型が使用されます。 値1はtrue&0as false

Bit列の例

BitまたはBoolean列を持つテーブルの作成

次のクエリは、BIT&Boolean列を持つテーブルを作成する方法を示しています

1
2
3
4
5
6
7

テーブルtestBitの作成(
col1ビット、
col2ビット、
col3ビット、
);

SQL Serverのbitデータ型とbooleanデータ型

bit/Boolean列への値の挿入

1
2
3
4
5
6
7
8
9
10
11
12

テストビットに挿入
(col1,col2,col3)
Values(1,0,null)
select*from testBit
——- ——- ——-
1 0 ヌルヌル

ビット

に変換する文字列値TRUEとFALSEを変換すると、TRUE&0FALSEの場合は1になります。

他の文字列を変換するとエラーになります。

ビットに変換すると、ゼロ以外の値は1になります。

1
2
3
4
5
6
7
8
9
10
11
12

テストビットに挿入
(col1,col2,col3)
values(‘TRUE’,’FALSE’)’,100)
select*from testBit
***結果
——- ——- ——-
1 0 1

bit列をinteger

に変換するbitデータ型は数値データ型ですが、それらを追加できます。 これを行うには、追加する前にcast関数を使用して整数に変換します

1
2
3
4

テストビットからcast(col1as int)+cast(col1as int)+cast(col2as int)
を選択します

Write a Comment

メールアドレスが公開されることはありません。