在单表中使用SubQuery

时间:2016-04-13 17:06:42

标签: sql db2

我有一个包含日期和版本的申请表格的表格。时间字段显示这些表单的访问时间。 第一个select语句显示该表的所有3个字段。

SELECT "DAY", R_TIME, FORM
FROM FORMHIST;

第二个选择显示星期一使用的所有表格的出现,但需要将其分解为表格名称,而不是与一个计数混在一起。

SELECT DAYNAME ("DAY", 'CLDR 1.5:en_US'), COUNT(*) AS UniqueTimeAppeared
FROM formhist
where DAYNAME ("DAY", 'CLDR 1.5:en_US')='Monday'
GROUP BY DAY

最后一个查询显示所有日期和时间的单个表单。

select *
from formhist
where form='MA41.gnt'

我如何最好地使用子查询或任何建议的方法来特定地组合最后两个查询,以检索每个表单类型中的列表以及每周的每天的计数。

Form ABC accessed Monday (100 times) 1/1/2013
Form ABC accessed Tuesday(250 times) 1/2/2013
Form XYZ accessed Friday (459 times) 2/2/2014
etc...

enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

我认为您只需要在FORMGROUP BY中加入SELECT

SELECT DAYNAME("DAY", 'CLDR 1.5:en_US'), FORM, COUNT(*) AS UniqueTimeAppeared
FROM formhist
-- where DAYNAME("DAY", 'CLDR 1.5:en_US')='Monday'
GROUP BY DAY, FORM;