暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【翻译PG】位串函数和操作符

原创 seagull 2023-03-23
155



9.6. 位串函数和操作符


本节描述用于检查和操作位串的函数和操作符,也就是操作类型为bitbit varying的值的函数和操作符。除了常用的比较操作符之外,还可以使用表 9.14里显示的操作符。&|#的位串操作数必须等长。在移位的时候,保留原始的位串的的长度,如例子所示。

表 9.14. 位串操作符

操作符 描述 例子 结果
|| 连接 B'10001' || B'011' 10001011
& 按位与 B'10001' & B'01101' 00001
| 按位或 B'10001' | B'01101' 11101
# 按位异或 B'10001' # B'01101' 11100
~ 按位求反 ~ B'10001' 01110
<< 按位左移 B'10001' << 3 01000
>> 按位右移 B'10001' >> 2 00100


下面的SQL标准函数除了可以用于字符串之外,也可以用于位串: lengthbit_lengthoctet_lengthpositionsubstringoverlay

下面的函数除了可以用于二进制串之外,也可以用于位串: get_bitset_bit。 当使用于一个位串时,这些函数将串的第一(最左)位计数为位 0。

另外,我们可以在整数和bit之间来回转换。一些例子:

44::bit(10)                    
44::bit(3)                     
cast(-44 as bit(12))           
'1110'::bit(4)::integer        
复制

请注意,如果只是转换为”,意思是转换成bit(1),因此只会转换整数的最低有效位。

注意

把一个整数转换成bit(n)将拷贝整数的最右边的n位。 把一个整数转换成比整数本身长的位串,就会在最左边扩展符号。



「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论