跳到主要内容

shiftleft:位运算左移

速查结论

shiftleft(base, expr) 是 Spark SQL 中用于对 base 进行按位左移 expr 位的函数,等效于 base * pow(2, expr)

语法

shiftleft(base, expr)

参数说明

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

示例

> SELECT shiftleft(2, 1);
4

常见报错与避坑指南

  • 参数类型不匹配:shiftleft 要求两个参数均为整数类型,传入非整数类型会导致错误。
  • 溢出风险:左移操作可能导致整数溢出。Spark SQL 内部会扩展位宽来处理,但结果值可能超出常规整数范围,需要注意下游处理逻辑的兼容性。

Since: 1.5.0

📱关注公众号

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

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

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

交流微信二维码

你可能还想看