22,210
社区成员
发帖
与我相关
我的任务
分享
--视图名称为:_en_wk_vAppAndLog
SELECT a.wfappid, a.wfappname, l.processid, l.duedt, l.alarmdt, l.path, l.todoid, l.elapsedwksec, p.tp,
p.name, p.wkid, l.createdate, l.actiondate, l.actionby,
l.actionbyname, f.endby, t.wftypename, t.wftypeid
FROM dbo._en_wk_log AS l INNER JOIN
dbo._en_wk_flow AS f ON l.flowid = f.id LEFT OUTER JOIN
dbo._en_wk_process AS p ON f.wkid = p.wkid AND p.id = l.processid LEFT OUTER JOIN
dbo._en_wk_master AS msc ON msc.id = f.wkid LEFT OUTER JOIN
dbo._en_wk_diagram AS d ON d.diagid = msc.diagid LEFT OUTER JOIN
dbo._en_wk_application AS a ON a.diagid = d.diagid INNER JOIN
dbo._en_wk_applicationtype AS t ON a.wftypeid = t.wftypeid
WHERE (f.wfappid IS NULL OR f.wfappid = ' ') AND (a.wfappname <> '选择审计流程类型') AND (a.wfappname <> '项目总览表')
--视图名称为:_en_wk_vAppModelStat
SELECT a.wfappid, a.wfappname, a.summin, s.startprocess, e.endprocess, t.totalprocess,
t.wftypename, t.wftypeid, CAST(a.summin AS float) / t.totalprocess AS avgmin,
p.sumelapse, ps.sumelapseint, CAST(em.emsummin AS float) / e.endprocess AS emavgmin
FROM (SELECT wfappid, wfappname, SUM(CAST(elapsedwksec / 60 AS int)) AS summin FROM dbo._en_wk_vAppAndLog
GROUP BY wfappid, wfappname) AS a INNER JOIN
(SELECT wfappid, wfappname, COUNT(*) AS startprocess FROM dbo._en_wk_vAppAndLog WHERE (tp = 'start')
GROUP BY wfappid, wfappname) AS s ON a.wfappid = s.wfappid LEFT OUTER JOIN
(SELECT wfappid, wfappname, COUNT(*) AS endprocess FROM dbo._en_wk_vAppAndLog WHERE (tp = 'end')
GROUP BY wfappid, wfappname) AS e ON a.wfappid = e.wfappid LEFT OUTER JOIN
(SELECT wfappid, wfappname, SUM(CAST(elapsedwksec / 60 AS int)) AS emsummin FROM dbo._en_wk_vAppAndLog WHERE (NOT (endby IS NULL))
GROUP BY wfappid, wfappname) AS em ON a.wfappid = em.wfappid INNER JOIN
(SELECT wfappid, wfappname, wftypename, wftypeid, COUNT(*) AS totalprocess FROM dbo._en_wk_vAppAndLog
GROUP BY wfappid, wfappname, wftypename, wftypeid) AS t ON a.wfappid = t.wfappid LEFT OUTER JOIN
(SELECT wfappid, wfappname, COUNT(*) AS sumelapse FROM dbo._en_wk_vAppAndLog WHERE (actiondate > duedt)
GROUP BY wfappid, wfappname) AS p ON a.wfappid = p.wfappid LEFT OUTER JOIN
(SELECT wfappid, wfappname, COUNT(*) AS sumelapseint
FROM (SELECT wfappid, wfappname, processid FROM dbo._en_wk_vAppAndLog
WHERE (actiondate > duedt)
GROUP BY wfappid, wfappname, processid) AS pe
GROUP BY wfappid, wfappname) AS ps ON a.wfappid = ps.wfappid
create index in_wfappname on en_wk_vAppModelStat (wfappname)
看行吗