问题标签 [lateral]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
36 浏览

sql - 查询 JSONB 对象中的数组元素

我有一个jsonb名为data的表中的列reports。这是report.id = 1 看起来的样子

report.id = 2看起来像:

我正在尝试获取表中所有条目的列表,reports其中至少一个data列的元素具有以下内容: type= ProduceAND 其中数组的Product任何元素或Product数组的任何元素都groupIDFood

所以从上面的例子中这个查询将只返回第一个索引,因为

  1. 类型 =Produce
  2. groupID 以数组Food的第一个元素开头Product

第二个索引将被过滤掉,因为 type 不是Produce

我不知道如何查询做 AND 查询groupID。这是我试图获取类型的所有条目Produce

0 投票
0 回答
26 浏览

json - 在 hive 中将 json 转换为行(横向视图)

希望您能帮助我解决以下问题(我的蜂巢知识有限)我的一张表中有以下 json 数组:

预期结果:

顾客。ID。价格。姓名。价格.Loc。当前。产品编号。ctg。尺寸。样式 Cst1 13358958. 37.89. 产品 1。27.95。英镑。13358958.物理。M. 12345 Cst1 13092564. 57.99. 产品 2。47.95。英镑。13358958. 服装。M. 54321

但是,当我使用以下方法在配置单元上查询时:

横向视图 explode(array(cart_items)) vl AS virtual_table where customer='cst1'

我没有得到行:数据没有拆分。如果我从查询中删除“数组”,我会收到一个错误:无法从 cart_items#59648 中提取值:需要结构类型但得到字符串。

任何帮助/建议表示赞赏。阿卜杜勒

0 投票
2 回答
88 浏览

view - 蜂巢中的横向视图爆炸功能

我正在尝试将数据从 excel 导出到配置单元表中,同时这样做,我有一列“ABC”,其值类似于“1,2,3”。我使用了横向视图分解功能,但它对我的数据没有任何作用。

以下是我的代码片段: CREATE TABLE table_name ( id string, brand string, data_name string, name string, address string, country string, flag string, sample_list array ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
;
LOAD DATA LOCAL INPATH 'location' INTO TABLE table_name ;

输出样本:

id 品牌 data_name 名称 地址 国家 flag sample_list

19 1 ABC SQL ABC 玉米淀粉 IN 1 ["[1,2,3]"]

然后我做: 从franchise_unsupress LATERAL VIEW explode(SEslist) SEslist中选择*作为final_SE;

输出样本:

id 品牌 data_name 名称 地址 国家 flag sample_list

19 1 ABC SQL ABC 玉米淀粉 IN 1 [1,2,3]

我也试过: select * fromfranchise_unsupress 横向视图 explode(split(SEslist,',')) SEslist AS final_SE ; 但出现错误:

失败:ClassCastException org.apache.hadoop.hive.serde2.objectinspector.StandardListObjectInspector 无法转换为 org.apache.hadoop.hive.serde2.objectinspector.PrimitiveObjectInspector

而我需要的是:

id 品牌 data_name 名称 地址 国家 flag sample_list

19 1 ABC SQL ABC 玉米淀粉 IN 1 1 19 1 ABC SQL ABC 玉米淀粉 IN 1 2 19 1 ABC SQL ABC 玉米淀粉 IN 1 3

任何帮助将不胜感激!谢谢你

0 投票
1 回答
39 浏览

sql - 正确使用 LATERAL FROM

我正在尝试使用 PostGIS 在 SQL 语句中执行多个步骤,以基本上将栅格转换为点、缓冲、溶解,然后根据属性确定整体边界,即凹壳。

以下是我所在的位置,但收到错误提示使用 LATERAL FROM 但我不知道我需要做什么。

任何帮助将不胜感激。

[0A000] 错误:聚合函数调用不能包含集合返回函数调用提示:您可能能够将集合返回函数移动到 LATERAL FROM 项中。职位:123