SQL Serverの場合:タイプBITの最大8列 タイプCHAR(1)の各列は、1バイト内に格納できます。 1バイトを使用します。
一方、BIT 列には2つの値(0 =false、1 =true)を指定することも、値をまったく指定しない(NULL)こともできます-CHAR(1) 任意の文字値を持つことができます(はるかに多くの可能性)
つまり、実際には次のようになります。
- 本当にtrue/false(yes / no)フィールドが必要ですか?その場合:
BITを使用します - 2つ以上の可能な値を持つものが必要ですか?
CHAR(1)を使用してください
何万もの列がない限り、パフォーマンスの観点からは、大きな違いはないと思います。そしてもちろん、BITを使用します 1バイトに最大8列を格納できると便利です。しかし、繰り返しになりますが、これらの列が数個、数十個ある「通常の」データベースの場合、実際には大きな違いはありません。 ニーズに合った列タイプを選択してください -パフォーマンスについて過度に心配しないでください.....