要按分组选择SQL(Redshift)中的第一行数值,可以使用子查询和窗口函数来实现。以下是一个示例代码:
SELECT col1, col2, col3
FROM (
SELECT col1, col2, col3, ROW_NUMBER() OVER (PARTITION BY col1 ORDER BY col2) as row_num
FROM your_table
) subquery
WHERE row_num = 1;
在这个示例中,我们首先在子查询中使用窗口函数ROW_NUMBER()
来为每个分组中的行分配一个行号,通过PARTITION BY col1
指定按col1
分组,通过ORDER BY col2
指定按col2
排序。然后,在外部查询中,我们选择行号为1的行,即每个分组中的第一行。
请注意替换示例代码中的your_table
、col1
、col2
和col3
为实际的表名和列名。
上一篇:按分组选择列进行箱线图