count
不是iSeries上SQL DB2的行分区的有效聚合函数吗?
此查询有效:
select ROW_NUMBER() over (partition by COL1, COL2 order by COL3 asc)
from MyTable
此查询提供语法错误:
select COUNT(1) over (partition by COL1, COL2)
from MyTable
错误消息指向单词partition
之前的括号:
[Message SQL0401]令牌(不是有效令牌。有效令牌的部分列表是FROM INTO。
我知道我可以重写查询以避免行分区,但我想知道为什么这不起作用。
答案 0 :(得分:2)
不,COUNT()与type of function as ROW_NUMBER()不一样。
如果你想要每行(col1,col2)的行数,你可以简单地使用
select COL1, COL2, count(*)
from MyTable
group by col1, col2