跳到主要内容

left:左截取字符

速查结论

left(str, len) 是 Spark SQL 中用于从字符串左侧截取指定长度的子字符串的函数。

语法

left(str, len)

从字符串 str 返回最左边的 len 个字符(len 可以是字符串类型),如果 len 小于或等于 0,则结果为空字符串。

参数说明

参数类型说明
strSTRING / BINARY源字符串或二进制数据
lenINT需要截取的字符数,从左侧开始计数

示例

> SELECT left('Spark SQL', 3);
Spa
> SELECT left(encode('Spark SQL', 'utf-8'), 3);
Spa

常见报错与避坑指南

  • len 为负数或 0 时返回空字符串left('Spark SQL', -1)left('Spark SQL', 0) 均返回空字符串,不会报错,注意业务逻辑中对 len 的取值判断。
  • 二进制数据需先编码:对二进制数据使用 left 时,需先用 encode() 转换,否则结果可能不符合预期。

Since: 2.3.0

📱关注公众号

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

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

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

交流微信二维码

你可能还想看