1. ホーム
  2. sql

[解決済み] SQL Server - boolean リテラル?

2023-07-06 21:49:55

質問

SQL Serverでboolean値をリテラルに書き込むには?使用例を参照してください。

select * from SomeTable where PSEUDO_TRUE

別のサンプル

if PSEUDO_TRUE
begin
  select 'Hello, SQL!'
end 

注:上記のクエリは、私がどのように使うかとは関係ありません。ただ単に、リテラルなブール値をテストするためです。

どのように解決するのですか?

SQL Server にはブーリアン演算がありません。 データ型 . Mikael が指摘したように、最も近い近似値はビットです。しかし、これは数値型であり、boolean 型ではありません。さらに、これは 2 つの値しかサポートしていません。 0 または 1 (そして、1つの非値。 NULL ).

SQL(標準SQL、およびT-SQL方言)は、以下のように記述します。 三値論理 . SQL の boolean 型は 3 つの値をサポートする必要があります。 TRUE , FALSEUNKNOWN (また、値でない NULL ). そのため bit は実はここでは良い一致ではありません。

SQL Server がサポートしないことを考えると データ型 をサポートしていないので、その "type" のリテラルを書けるとは思わないでください。