admin

T-SQL中的布尔值“ NOT”不适用于“位”数据类型吗?

sql

尝试执行单个布尔NOT操作,看来在MS SQL Server 2005下,以下块不起作用

DECLARE @MyBoolean bit;
SET @MyBoolean = 0;
SET @MyBoolean = NOT @MyBoolean;
SELECT @MyBoolean;

相反,我在以下方面越来越成功

DECLARE @MyBoolean bit;
SET @MyBoolean = 0;
SET @MyBoolean = 1 - @MyBoolean;
SELECT @MyBoolean;

但是,这似乎有点扭曲的方式来表达诸如否定之类的简单内容。

我想念什么吗?


阅读 241

收藏
2021-05-10

共1个答案

admin

使用〜运算符:

DECLARE @MyBoolean bit
SET @MyBoolean = 0
SET @MyBoolean = ~@MyBoolean
SELECT @MyBoolean
2021-05-10