MySQL でブールデータ型を使用する
 
このチュートリアルでは、SQL でブールデータ型を使用する方法を理解することを目的としています。
データベース開発者はブールデータ型を使用することがあり、True または False の 2つの可能な値のみを許可します。可能な値が 2つしかない場合は、作業が簡単になります。
ブール値は SQL Server でサポートされているデータ型ではありませんが、SQL にブール値を格納する方法があります。この方法では、SQL で BIT データ型を使用します。
この記事では、SQL Server のビットデータ型を紹介します。SQL Server の場合、ビットデータは 0、1、NULL のいずれかの値のみを取ることができます。
ストレージに関しては、9 列未満のテーブルの場合、ビットデータは 1 バイトとして格納されます。このような列が 9〜16 のテーブルの場合、ビットデータは 2 バイトを使用します。
さらに、SQL テーブルの文字列値を BIT 値に変換できます。このステートメントがどのように機能するかを理解してみましょう。
ただし、開始する前に、操作するダミーデータセットを作成します。ここでは、テーブル student_details と、その中に stu_firstName、stu_lastName、stu_passed、および stu_id 列を作成します。
stu_passed 列は、学生が合格したかどうかを示す 1 または 0 のブール値を取ります。1 は学生が合格したことを表し、2 は学生が失敗したことを意味します。-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  stu_passed BIT,
  primary key(stu_id)
);
次に、ブール値として機能する stu_passed を使用して、学生の詳細をテーブルに挿入します。
-- insert bulk rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName,stu_passed) 
 VALUES(1,"Preet","Sanghavi",0),
 (2,"Rich","John",1),
 (3,"Veron","Brow",0),
 (4,"Geo","Jos",1),
 (5,"Hash","Shah",1),
 (6,"Sachin","Parker",1),
 (7,"David","Miller",0);
上記のコードは、テーブル student_details に学生データを入力します。このテーブルは、次のコマンドで視覚化できます。
SELECT * from student_details;
上記のコードブロックは、次の出力を生成します。
stu_id	stu_firstName   stu_lastName	stu_passed   
1		Preet			Sanghavi		0
2		Rich			John			1
3		Veron			Brow			0
4		Geo				Jos				1
5		Hash			Shah			1
6		Sachin			Parker			1
7		David			Miller			0
上記のように、stu_id の 1、3、および 7 の生徒は、stu_passed 列の値が 0 になります。これらの学生が試験に合格していないことを示しています。
一方、stu_id の 2、4、5、および 6 の生徒は、stu_passed 列の値が 1 になります。これらの学生が試験に合格したことを示します。
この BIT のアイデアを使用すると、SQL のブールデータ型に類似した値を格納するのに役立ちます。したがって、SQL でブール値を使用する方法を学びました。
