sql - 对 hive 中的特定列进行 GROUP BY
问题描述
我有一个包含 38 列的配置单元查询,只有一列使用聚合函数。但我只需要将其与列名 1、2 进行分组,而不是全部。如何实现?
例如,我需要的是,
SELECT
1
,2
,3
,4
,5
,MAX(6)
FROM
table_x
GROUP BY
1,2
解决方案
选择您想要的所有列并仅使用列名 1 将其分组,2 使用分析函数。
使用以下查询:
select col1,col2.....col38,
max(col6) over(partition by col1,col2 order by col1) as max_val
from tablename
推荐阅读
- python - 在 Python 中访问字符串的二进制文件
- ffmpeg - 使用 ffmpeg 和 xfade 过滤器组合三个或更多视频
- python - 为什么我的 PCA 双图中的“加载”偏移?(Python,Matplotlib)
- c# - 我做错了什么,如何让游戏对象传递相同的颜色并破坏不同的颜色?
- java - Vlcj jna unsatisfied link 错误无法定位本机库
- google-cloud-platform - 如何在标头中定义 API 密钥而不是在查询中
- database - 在 SQL Server 上附加数据库,PowerShell 光标进入下一行
- python - 如何在不添加路径的情况下更改 Tkinter 图标
- django - 修复 . .py 文件
- azure-devops-rest-api - 高效查询 DevOps Services REST API