hiveql相关内容

Hive UDF 用于选择除某些列之外的所有列

HiveQL(以及一般的 SQL)中的常见查询构建模式是选择所有列 (SELECT *) 或明确指定的一组列 (SELECT A, B,C).除了一组指定的列之外,SQL 没有用于选择所有列的内置机制. 有多种机制可以排除某些列,如 this SO question 但没有一个自然适用于 HiveQL.(例如,使用 SELECT * 创建一个临时表然后 ALTER TABLE DROP 其某 ..
发布时间:2021-11-14 22:29:09 其他开发

如何在查询结果中添加整数唯一 ID - __有效地__?

给定一个查询,select * from ...(可能是 CTAS 语句的一部分) 目标是添加一个额外的列,ID,其中 ID 是一个唯一的整数. select ... as ID,* from ... 附言 ID 不必是连续的(可能有间隙) ID 可以是任意的(不必表示结果集中的特定顺序) row_number 逻辑上解决了问题- select row_number() ..
发布时间:2021-11-14 22:11:49 其他开发

查询 Parquet 记录中的嵌套数组

我正在尝试不同的方法来查询记录数组中的记录并显示完整的行作为输出. 我不知道哪个嵌套对象有字符串“pg".但我想查询特定对象.对象是否有“pg".如果“pg"存在,那么我想显示该完整行.如何在不指定对象索引的情况下在嵌套对象上编写“spark sql 查询".所以我不想使用 children.name 的索引 我的 Avro 记录: {"name": "父母","类型":"记录",“ ..

Hive在选择数据时是否保留文件顺序

如果我这样做 select * from table1; 检索数据的顺序 文件顺序或随机顺序 解决方案 如果没有 ORDER BY,则无法保证顺序. 许多进程(映射器)并行读取数据,在计算拆分后,每个进程开始读取一些文件或几个文件,具体取决于计算的拆分. 所有并行进程可以处理不同的数据量并运行在不同的节点上,每次的负载都不相同,因此它们开始返回行并在不同的时间完成,这取决 ..
发布时间:2021-11-14 21:47:29 其他开发

分解(转置?)Spark SQL 表中的多列

我正在使用 Spark SQL(我提到它在 Spark 中,以防影响 SQL 语法 - 我还不够熟悉,无法确定)并且我有一个我正在尝试重新构建的表,但是我在尝试同时转置多个列时遇到困难. 基本上我的数据看起来像: userId someString varA varB1 "example1" [0,2,5] [1,2,9]2 "example2" [1,20,5] [9,null,6] ..
发布时间:2021-11-14 21:18:53 其他开发

分解(转置?)Spark SQL 表中的多列

我正在使用 Spark SQL(我提到它在 Spark 中,以防影响 SQL 语法 - 我还不够熟悉,无法确定)并且我有一个我正在尝试重新构建的表,但是我在尝试同时转置多个列时遇到困难. 基本上我的数据看起来像: userId someString varA varB1 "example1" [0,2,5] [1,2,9]2 "example2" [1,20,5] [9,null,6] ..
发布时间:2021-11-12 05:32:17 其他开发

如何在配置单元中使用正则表达式排除字符串中的特殊字符

我想排除句号(.)和大括号((,)). 但是,十进制数字应该保持不变 所以基本上如果输入是 Hive 仅支持 FROM 子句中的子查询(通过 Hive 0.12).必须为子查询命名,因为 FROM 中的每个表子句必须有一个名字.子查询选择列表中的列必须有独一无二的名字. 输出应该是 Hive 通过 Hive 0.12 仅支持 FROM 子句中的子查询必须为子查询命名,因为 ..
发布时间:2021-11-12 04:10:49 其他开发

Hive 选择数据到结构数组中

我试图在 Hive 中找出一种方法来从平面源中选择数据并输出到命名结构数组中.这是我正在寻找的示例... 样本数据: house_id,first_name,last_name1,鲍勃,琼斯1、珍妮、琼斯2、莎莉约翰逊3、约翰、史密斯3、倒钩、铁匠 期望的输出: 1 [{"first_name":"bob","last_name":"jones"},{"first_name":"jen ..
发布时间:2021-11-12 04:02:27 其他开发

如何在 hive 中创建一个空的结构数组?

我在Hive 1.1.0中有一个视图,根据条件,它应该返回一个空数组或struct的数组 这是我的代码: 选择当的情况下然后数组()其他数组(结构(t1.name,t1.jobslots))结尾来自表 t1; 这里的问题是,空数组 array() 的类型是 array.因此,当我尝试将其插入表中时,它会引发错误. 如何更改它以返回 array ..
发布时间:2021-08-31 19:11:05 其他开发

替换配置单元中的空字符串-Nvl和COALESCE已尝试

如何用其他值替换空字符串(长度为0)?已经使用了 Nvl 和 COALESCE ,但是两者都不替换为替换值,因为该值不为null.我可以使用 case 语句,但是如果有内置函数,则在寻找它. 解决方案 由于您有空字符串,因此当我们使用 coalesce或nvl 时,仅当我们具有 null值不适用于空字符串. 带空字符串: hive>选择Coalesce(string(“"),"1 ..
发布时间:2021-05-14 19:11:07 其他开发

在执行选择查询时,如何在Hive中将YYY-MM-DD HH:mm:ss中的时间戳转换为YYY-MM-DD HH:mm:ss.SSS?

我正在比较2个不同数据库引擎之间的时间戳列,我需要将以 YYY-MM-DD HH:mm:ss 格式存储的时间戳列恢复为 YYY-MM-DD HH:mm:ss.SSS ,如果没有条目,则 SSS 为 000 . 我可以使用Hive select查询执行上述操作吗? 解决方案 拆分时间戳以获取毫秒部分,如果根本没有毫秒部分或毫秒部分少于3位,请使用rpad添加零. 演示: ,其中 ..
发布时间:2021-05-14 19:09:51 其他开发