分裂什么都不做

时间:2009-12-01 17:01:48

标签: sql db2

我正试图创造百分位数。我的查询正确地生成了排名,但除法没有做任何事情(排名显示在列而不是分数中)

"/"(RANK() OVER(ORDER BY "Disk IO"),Count(*)) "Disk IO Score"

我也尝试过生成等级,然后选择并划分,但结果相同。

SELECT ..."/"("Disk IO Score",Count(*)) "Score"...
FROM(....RANK() OVER(ORDER BY "Disk IO") "Disk IO Score"...)

谢谢, Buzkie

SELECT "System_Name", "/"(RANK() OVER(ORDER BY "Disk IO"),Count(*)) "Disk IO Score" 
FROM (Select...)
GROUP BY "System_Name", "Disk IO"

2 个答案:

答案 0 :(得分:0)

似乎您使用的是汇总COUNT(*)而非分析汇总。

试试这个:

SELECT  RANK() OVER (...) / COUNT(*) OVER (...)

您能否发布整个查询(包括GROUP BY条款)?

答案 1 :(得分:0)

我猜它已经回答了。计数(*)返回1,所以我只是除以1.