请输入您要查询的百科知识:

 

词条 符数转换
释义

SQL语法

在 Transact-SQL 语句中,将某个给定的整型值转换为二进制表达式,对其执行按位逻辑非运算。

语法

expression

参数

expression

是任何有效的 Microsoft® SQL Server™ 表达式(表达式必须由整数数据类型分类中的任何数据类型组成,或者由 binary 或 varbinary 数据类型组成)。expression 是一个经过处理并转换为二进制数字以便进行位运算的整数。

结果类型

如果输入值为 int,则返回 int;如果输入值为 smallint,则返回 smallint;如果输入值为 tinyint,则返回 tinyint;或者如果输入值为 bit,则返回 bit。

注释

通过从两个表达式取对应的位,位运算符 ~ 对 expression 执行按位逻辑非运算。如果 expression 中某个位(正在被解析的当前位)的值为 0,则结果中该位的值被设置为 1;否则,结果中该位的值将被清除为 0位运算符 ~ 只可以用在整数类型分类的列上。

示例

下面的示例创建一个具有 int 数据类型的表以显示值,并将该表放入一行中。

USE master

GO

IF EXISTS ( SELECT * FROM INFORMATION_SCHEMA.TABLES

WHERE TABLE_NAME = 'bitwise')

DROP TABLE bitwise

GO

CREATE TABLE bitwise

(

a_int_value tinyint NOT NULL,

b_int_value tinyint NOT NULL

)

GO

INSERT bitwise VALUES (170, 75)

GO

下面的查询在 a_int_value 列和 b_int_value 列上执行按位 NOT 运算。

USE MASTER

GO

SELECT ~ a_int_value, ~ b_int_value

FROM bitwise

下面是结果集:

--- ---

85 180

(1 row(s) affected)

170(a_int_value 或 A,如下所示)的二进制表示为 0000 0000 1010 1010。在该值上执行按位 NOT 运算所产生的二进制结果是 0000 0000 0101 0101,即十进制数 85。

(~A)

0000 0000 1010 1010

-------------------

0000 0000 0101 0101

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/3/4 14:08:37