-1
私は各従業員の生産の合計数を検索するクエリを持っています。クエリを実行すると、outCountの結果が間違っています。私が間違っていることは本当にわかりません。どんな提案も素晴らしいだろう。SQLサブクエリのカウントが間違っています
SELECT
r1.RegionID,
r1.rDate,
r1.tCount,
r1.sCount,
r1.outCount,
r1.cm,
r1.sCalc + r1.oCalc + r1.tCalc + r1.cmCalc AS dayScore,
r1.createPID
FROM (SELECT
q1.RegionID,
ROUND(q1.tCount * 0.363636364, 9) AS tCalc,
ROUND(q1.sCount * 0.181818182, 9) AS sCalc,
ROUND(q1.outCount * 0.090909091, 9) AS oCalc,
ROUND(q1.cm * 0.363636364, 9) AS cmCalc,
q1.rDate,
q1.tCount,
q1.sCount,
q1.outCount,
q1.cm,
q1.createPID
FROM (SELECT
q1.RegionID,
q1.rDate,
q1.tCount,
q1.sCount,
q1.outCount,
q1.cm,
q1.createPID
FROM (SELECT
SecurityPrincipal.RegionID,
CONVERT(NVARCHAR, Ticket.dtCreate, 107) AS rDate,
COUNT(Ticket.ticketID) AS tCount,
COUNT(SRO.SROID) AS sCount,
COUNT(o.NoteID) AS outCount,
COUNT(cm.NoteID) AS cm,
Ticket.createPID
FROM CDOC.rpt.Ticket
LEFT OUTER JOIN CDOC.rpt.SRO
ON SRO.ticketID = Ticket.ticketID
LEFT OUTER JOIN (SELECT
Notes.NoteID,
Notes.ticketID,
Notes.noteCategoryID
FROM CDOC.rpt.Notes
WHERE Notes.noteCategoryID = '24') o
ON o.ticketID = Ticket.ticketID
LEFT OUTER JOIN (SELECT
Notes.NoteID,
Notes.ticketID
FROM CDOC.rpt.Notes
WHERE Notes.noteSubCategoryID = '13'
OR Notes.noteSubCategoryID = '16'
OR Notes.noteCategoryID = '22') cm
ON cm.ticketID = Ticket.ticketID
INNER JOIN CDOC.rpt.SecurityPrincipal
ON SecurityPrincipal.pid = Ticket.createPID
GROUP BY CONVERT(NVARCHAR, Ticket.dtCreate, 107),
SecurityPrincipal.RegionID,
Ticket.createPID) q1) q1) r1
が参考になります。 – ydoow