ITPub博客

首页 > 数据库 > 国内数据库 > YashanDB位运算符

YashanDB位运算符

国内数据库 作者:崖山数据库系统YashanDB 时间:2025-04-01 18:47:42 0 删除 编辑

YashanDB提供如下位运算符:

运算符 操作数 含义 NULL参与运算
& 二元 按位与:1 & 1 = 1
其他为0


| 结果为NULL |
| | | 二元 | 按位或:0 | 0 = 0

其他为1

| 结果为NULL |
| ^ | 二元 | 按位异或:0 ^ 0 = 0 或 1 ^ 1 = 0

其他为1

| 结果为NULL |

YashanDB中,可实现位运算的方式有:

其中,&与BITAND同义,|与BITOR同义,^与BITXOR同义。

参与运算的两个数据,按二进制展开后,由低到高每bit进行位运算,并以BIGINT类型输出运算结果。

位运算最多支持到64位。

小数参与运算: FLOOR取整后,参与位运算。

# 运算优先级

从高到低的运算优先级为:^>&>|。

可以使用双括号()来调整想达到的运算优先级。

# 数据类型

如下数据类型可能会参与到位运算中:

  • 数值型(除FLOAT、DOUBLE外)
  • 字符型

在进行二元位运算时,YashanDB将通过隐式数据转换,将参与运算的数据类型全部统一到BIGINT类型,再进行位运算。

下图列示具体统一规则:(行列标题格为参与位运算的数据类型;内容单元格为统一后的数据类型;–表示不支持两种数据类型参与位运算)

数据类型 TINYINT SMALLINT INT BIGINT NUMBER 字符型 BIT
TINYINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
SMALLINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
INT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
NUMBER BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
字符型 BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT
BIT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT BIGINT


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3079701/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,融入原创理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,为客户提供一站式的企业级融合数据管理解决方案。

注册时间:2023-04-11

  • 博文量
    722
  • 访问量
    639958