跳到主要内容

shiftright:位运算右移

速查结论

shiftright(base, expr) 是 Spark SQL 中用于对 base 进行按位(有符号)右移 expr 位的函数,等效于 floor(base / pow(2, expr))

语法

shiftright(base, expr)

参数说明

参数类型说明
base整数要进行移位操作的基数值。
expr整数右移的位数。

示例

> SELECT shiftright(4, 1);
2

常见报错与避坑指南

  • 有符号右移 vs 无符号右移:shiftright 执行的是有符号右移(算术右移),会保留符号位。若需无符号右移(逻辑右移,高位补零),请使用 shiftrightunsigned。
  • 参数类型不匹配:shiftright 要求两个参数均为整数类型,传入非整数类型会导致错误。

Since: 1.5.0

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

备注「数据仓库技术」加入社群,每日一道大厂SQL真题

交流微信二维码

你可能还想看