处理 n 个位数组并使用以下逻辑返回其参数的逐位 AND 运算结果:对于所比较的每个位,如果所有位都为 1,则返回 1;否则,返回 0。
BIT_AND( bit-expression )
expression 要确定值的表达式。这通常是列名。
LONG VARBIT
SQL/2003 服务商扩充。
以下示例生成包含 CHAR 列的四个行,然后将值转换为 VARBIT。
SELECT BIT_AND( CAST(row_value AS VARBIT) ) FROM dbo.sa_split_list('0001,0111,0100,0011') |
得出结果 0000 的过程如下:
在第 1 行 (0001) 和第 2 行 (0111) 进行逐位与运算,得到 0001(这两个值的第四位都是 1)。
再将上面的比较结果 (0001) 与第 3 行 (0100) 进行逐位与运算,得到 0000(两个值没有同一位都是 1 的情况)。
然后将上面的比较结果 (0000) 与第 4 行 (0011) 进行逐位与运算,得到 0000(两个值没有同一位都是 1 的情况)。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |