我觉得这应该很容易,但我似乎无法弄清楚。由三列中的两列组成SQL
我有一个四列的表。三列具有类别的文字说明。第四列计算前三列的连接在原始表中出现的次数。
表看起来像这样。
Vertical Cat Sub-Cat Counts
Auto Cars Sports Cars 9
Auto Cars Sedan 20
Auto SUV Luxary 21
Auto SUV Mid-Range 8
目标是为垂直和猫的独特版本的最高“计数”选择垂直,猫和子猫。
因此,查询将返回以下内容。
Vertical Cat Sub-Cat Counts
Auto Cars Sedan 20
Auto SUV Luxary 21
我试着使用MAX()选择最高的“罪名”,但我通过对TD13非集合组的所有值都集团。有关如何完成此任务的任何建议?
1为窗聚合函数溶液。只有T-SQL?已经完全忘记了这种方法已经离开Sql Server几年了。 –
@LongboatHarry:不,QUALIFY是Teradata特定的语法,而不是SQL Server,但是Teradata被标记为:-)在所有其他DBMS中,您需要将ROW_NUMBER嵌套在派生表中,并使用外部查询中的WHERE进行过滤。 – dnoeth