我试过像
这样的东西select * from table_name
group by column1
Order by column2 desc;
但它不起作用,因为你应该把所有选中的列放在group by语句中。
是否有像
这样的东西for each partition
*do something*
在蜂巢中? 谢谢。
编辑:column1是制作分区的列
答案 0 :(得分:0)
我们通常会对此类情况使用ROW_NUMBER()
。
SELECT a.col1
,a.col2
,a.col3 --Other columns
FROM (
SELECT t.*
,ROW_NUMBER() OVER ( PARTITION BY column1
ORDER BY column2 DESC
) AS rn
FROM table_name t ) a
WHERE rn >= n -- filter based on rn to get top n rows for each partition.