0
我有多个查询连接,让我重复记录....这里是我的查询这个查询提供了多行
SELECT tblB.City, tblA.ShortDesc,
SUM(CASE WHEN Code = 'M' THEN 1 ELSE 0 END) AS Male,
SUM(CASE WHEN Code = 'F' THEN 1 ELSE 0 END) As Female
FROM tblC INNER JOIN
tblB ON tblC.ID = tblB.ID INNER JOIN
tblE ON tblC.Number = tblE.Number INNER JOIN
tblA ON tblE.ServiceID = tblA.ServiceID INNER JOIN
tblD ON tblC.IDNumber = tblC.IDNumber
WHERE (tblA.ServiceID IN (71)) AND (tblC.Date BETWEEN '1/12/2017' AND '2/31/2017')
GROUP BY tblB.City, tblA.ShortDesc, tblD.Code
所以这个查询应该给我的结果是这样的......
City Male Female
LA 17 21
SF 23 7
但是我得到是这样的....
City Male Female
LA 17 0
LA 0 21
SF 23 0
SF 0 7
任何人有为什么发生这种情况的任何想法???
由于您在条件聚合中使用了这种方式,因此似乎并不需要“GROUP BY tblD.Code”。 – ollie
重复的地方在哪里?从分组中删除代码 – scsimon
@ollie表示感谢 – BobSki