hive-concat字符串

ahy6op9u  于 2021-05-29  发布在  Hadoop
关注(0)|答案(3)|浏览(458)

我正在尝试使用配置单元在表中包含数据行的字符串。
在sql中是这样的

SELECT 'Select * from ' + [Column] + '; '
                 FROM table_name
                 ORDER BY [table_name]

结果应该是-selectfrom ;从asd中选择;从xyz中选择*。。
无法在配置单元命令中写入或找到与此相关的内容。

u0sqgete

u0sqgete1#

连接第行中的字符串数据。假设x,y是列名。

insert into orders(1,"a");
insert into orders(2,"b");

这里假设我们要把“a”,“b”合并为一个实体。所以我们做如下

select concat_ws(',',collect_list(a,b)) from orders;
vkc1a9a2

vkc1a9a22#

使用concat()函数:

'SELECT concat('Select * from ', [table_name],  '; ') 
                 FROM your_table
                 ORDER BY [table_name]'

如果[表名称]是包含表名称的列

z9smfwbn

z9smfwbn3#

你可以使用concat来完成你的任务。但如果你直接把“;”在concat函数中,它可能会显示“无法识别输入错误”以避免此使用\before;
下面是同样的测试和工作的例子

select concat("select * from ", col , " \;") from table

输出:
从a中选择*;

相关问题