sparksql 截取函数
时间: 2023-12-01 15:39:36 浏览: 84
SparkSQL截取函数是用于截取字符串的函数,可以通过指定起始位置和长度来截取字符串。具体使用方法如下:
1. substring(str, pos, len):从字符串str的pos位置开始,截取长度为len的子串。
2. substring(str, pos):从字符串str的pos位置开始,截取到字符串末尾的子串。
3. substring_index(str, delim, count):从字符串str中,以delim为分隔符,截取第count个分隔符之前或之后的子串。
举例演示:
1. spark.sql("select substring('abcdeffff',3,5) from data1").show():从字符串'abcdeffff'的第3个位置开始,截取长度为5的子串,结果为'cdeff'。
2. spark.sql("select substring('abcdeffff',-5) from data1").show():从字符串'abcdeffff'的倒数第5个位置开始,截取到字符串末尾的子串,结果为'effff'。
3. spark.sql("select substring('abcdeffff',10) from data1").show():从字符串'abcdeffff'的第10个位置开始,截取到字符串末尾的子串,由于超出了字符串长度,结果为空。
4. spark.sql("select substring('abcdeffff',12,5) from data1").show():从字符串'abcdeffff'的第12个位置开始,截取长度为5的子串,由于超出了字符串长度,结果为空。
5. spark.sql("select substring('abcdeffff',3,25) from data1").show():从字符串'abcdeffff'的第3个位置开始,截取长度为25的子串,由于超出了字符串长度,结果为'cdeffff'。
6. spark.sql("select substring('abcdeffff',-1) from data1").show():从字符串'abcdeffff'的倒数第1个位置开始,截取到字符串末尾的子串,结果为'f'。
阅读全文