字符串函数类似于hive中的stuff

sd2nnvve  于 2021-06-28  发布在  Hive
关注(0)|答案(1)|浏览(422)

我们如何在hive中实现sql函数呢?
例子:

SELECT STUFF('abcdef', 2, 3, 'ijklmn');  

Result is:
---------   
aijklmnef   

(1 row(s) affected)

可以使用的一种逻辑是使用子字符串和concat:

SELECT CONCAT(SUBSTR('abcdef',0,1),'ijklmn',SUBSTR('abcdef',5,LENGTH('abcdef')));
 ----------

 +------------+--+
 | aijklmnef  |
 +------------+--+
 1 row selected (0.322 seconds)

有没有其他简单的逻辑来实现hive中的东西?

lf3rwulv

lf3rwulv1#

从您的问题中,我了解到您希望在sql server中使用类似的功能。
t-sql stuff命令用于将结果连接在一起。
如果您有以下类型的输入:
输入:

然后,stuff将在串联后为您提供一个输出:
输出:

类似于Hive里的东西的查询如下,

select id
    ,name
    ,dob
    ,concat_ws(',',collect_list(location)) as location
from test_analysis
group by id
    ,name
    ,dob

相关问题