帮助DB2中的查询

时间:2011-03-23 00:19:51

标签: sql db2

我希望你的帮助我的查询。我有一个表employee.details与以下列: branch_name,firstname,lastname,age_float。

我希望此查询列出age_float的所有不同值 属性,结果表的每一行中的一个,以及第二个字段中的每一行旁边显示的 详细信息表中年龄小于或等于该值的人数。 有任何想法吗?谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用OLAP功能:

SELECT DISTINCT age_float, 
       COUNT(lastname) OVER(ORDER BY age_float) AS number
  FROM employee_details

COUNT(lastname) OVER(ORDER BY age_float) AS number按年龄排序行,并返回年龄<=当前行年龄的员工人数

或简单的加入:

SELECT A.age_float, count(lastname)
  FROM (SELECT DISTINCT age_float FROM employee_details) A
JOIN employee_details AS ED ON ED.age_float <= A.age_float
GROUP BY A.age_float