2
我有两列id和段。段是用逗号分隔的一组字符串。我需要在所有表格中找到平均数量的细分。一种方法是使用两个单独的查询 -
A - select count(*) from table_name;
B - select count(*) from table_name LATERAL VIEW explode(split(segment, ',') lTable AS singleSegment where segment != ""
avg = B/A
在上述情况下,答案将是8/4 = 2。
有没有更好的方法来实现这一目标?
以上查询的较长版本运行良好。谢谢 !! – BlitzKrieg
是的,我删除了错误的第一个查询,所以你的意思是简短的查询,现在:) @BlitzKrieg更长的查询会变得更慢,但它确实提供了更多的灵活性。 –