GBase 8c
其他
文章

GBase 8c数据类型——位串函数和操作符

发表于2023-12-06 14:50:4879次浏览2个评论

位串操作符

除了常用的比较操作符之外,还可以使用以下的操作符。&,|和#的位串操作数必须等长。在位移的时候,保留原始的位串长度(并以0填充)。

l ||

描述:位串之间进行连接。示例:

postgres=# SELECT B'10001' || B'011' AS RESULT;
result
----------
10001011
(1 row)

单字段内部连续连接操作不建议超过180次。如果超过180次,需拆分为多个连续连接的字符串,在它们之间再执行连接操作。例如:str1||str2||str3||str4 拆分为 (str1||str2)||(str3||str4)。

l &

描述:位串之间进行“与”操作。示例:

postgres=# SELECT B'10001' & B'01101' AS RESULT;
result
--------
00001
(1 row)
l |

描述:位串之间进行“或”操作。示例:

postgres=# SELECT B'10001' | B'01101' AS RESULT;
result
--------
11101
(1 row)
l #

描述:位串之间如果不一致进行“或”操作。如果两个位串中对应位置都为1或者则该位置返回为0。示例:

postgres=# SELECT B'10001' # B'01101' AS RESULT;
result
--------
11100
(1 row)
l ~

描述:位串之间进行“非”操作。示例:

postgres=# SELECT ~B'10001'AS RESULT;
result
----------
01110
(1 row)
l <<

描述:位串进行左移操作。示例:

postgres=# SELECT B'10001' << 3 AS RESULT;
result
----------
01000
(1 row)
l >>

描述:位串进行右移操作。示例:

postgres=# SELECT B'10001' >> 2 AS RESULT;
result
----------
00100
(1 row)

评论

登录后才可以发表评论
用户头像
levvel发表于 4个月前
分析得很到位!
崔哥发表于 2个月前
鼎湖当日弃人间,破敌收京下玉关。恸哭六军俱缟素,冲冠一怒为红颜。红颜流落非吾恋,逆贼天亡自荒宴。电扫黄巾定黑山,哭罢君亲再相见。相见初经田窦家,侯门歌舞出如花。许将戚里箜篌伎,等取将军油壁车。家本姑苏浣花里,圆圆小字娇罗绮。梦向夫差苑里游,宫娥拥入君王起。前身合是采莲人,门前一片横塘水。横塘双桨去如飞,何处豪家强载归。此际岂知非薄命,此时唯有泪沾衣。薰天意气连宫掖,明眸皓齿无人惜。夺归永巷闭良家,教就新声倾坐客。坐客飞觞红日暮,一曲哀弦向谁诉?白晳通侯最少年,拣取花枝屡回顾。早携娇鸟出樊笼,待得银河几时渡?恨杀军书抵死催,苦留后约将人误。相约恩深相见难,一朝蚁贼满长安。可怜思妇楼头柳,认作天边粉絮看。遍索绿珠围内第,强呼绛树出雕阑。若非壮士全师胜,争得蛾眉匹马还?蛾眉马上传呼进,云鬟不整惊魂定。蜡炬迎来在战场,啼妆满面残红印。专征萧鼓向秦川,金牛道上车千乘。斜谷云深起画楼,散关月落开妆镜。传来消息满江乡,乌桕红经十度霜。教曲伎师怜尚在,浣纱女伴忆同行。旧巢共是衔泥燕,飞上枝头变凤凰。长向尊前悲老大,有人夫婿擅侯王。当时只受声名累,贵戚名豪竞延致。一斛明珠万斛愁,关山漂泊腰肢细。错怨狂风飏落花,无边春色来天地。尝闻倾国与倾城,翻使周郎受重名。妻子岂应关大计,英雄无奈是多情。全家白骨成灰土,一代红妆照汗青。君不见,馆娃初起鸳鸯宿,越女如花看不足。香径尘生乌自啼,屧廊人去苔空绿。换羽移宫万里愁,珠歌翠舞古梁州。为君别唱吴宫曲,汉水东南日夜流!