Hiveql - RIGHT()LEFT()函数

jmi*_*738 10 string hive hiveql

Hiveql中是否有一个等效于TS(右()或左()函数的函数?例如,RIGHT(col1,10)从col1获取前10个字符.

谢谢

san*_*wat 20

没有右侧或左侧功能,但您可以使用substr实现相同的功能

left (column, nchar) = substr(column, 0, nchar)

right  (column, nchar) = substr (column, (-1)* nchar)
Run Code Online (Sandbox Code Playgroud)

注意:这里的nchar不是字符


âńō*_*oůŜ 7

这适用于我的正确功能:substr(col,-nchar)= right(col,nchar).

hive> select substr('adbcefghij',-4);
ghij
Time taken: 40.839 seconds, Fetched: 1 row(s)
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.


小智 6

right(column, nchar) = substr(column, (length(column)-nchar+1), nchar)
Run Code Online (Sandbox Code Playgroud)