Skip to content

Commit bdbc74c

Browse files
committed
Reformat
1 parent 71419da commit bdbc74c

1 file changed

Lines changed: 57 additions & 66 deletions

File tree

ActiveRecordsOverTime.sql

Lines changed: 57 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -5,69 +5,60 @@
55
-- Author: James at Tenth
66

77

8-
WITH FamiliesGiving AS (
9-
SELECT YEAR(cc.ContributionDate) AS ActivityYear, p.FamilyId
10-
FROM dbo.Contribution cc WITH (NOLOCK)
11-
JOIN dbo.People p WITH (NOLOCK) ON p.PeopleId = cc.PeopleId
12-
WHERE cc.ContributionTypeId IN (1,5,8,9,10,20)
13-
AND p.IsDeceased = 0
14-
GROUP BY YEAR(cc.ContributionDate), p.FamilyId
15-
HAVING COUNT(*) >= 1
16-
),
17-
PeopleFromGiving AS (
18-
SELECT fg.ActivityYear, p.PeopleId
19-
FROM FamiliesGiving fg
20-
JOIN dbo.People p WITH (NOLOCK) ON p.FamilyId = fg.FamilyId
21-
WHERE p.IsDeceased = 0
22-
),
23-
Attenders AS (
24-
SELECT YEAR(a.MeetingDate) AS ActivityYear, a.PeopleId
25-
FROM dbo.Attend a WITH (NOLOCK)
26-
JOIN dbo.People p WITH (NOLOCK) ON p.PeopleId = a.PeopleId
27-
WHERE a.AttendanceFlag = 1
28-
AND p.IsDeceased = 0
29-
GROUP BY YEAR(a.MeetingDate), a.PeopleId
30-
HAVING COUNT(*) >= 2
31-
),
32-
LegacyRegCount AS (
33-
SELECT YEAR(rd.Stamp) AS ActivityYear, rd.UserPeopleId AS PeopleId, COUNT(*) AS rCount
34-
FROM dbo.RegistrationData rd WITH (NOLOCK)
35-
JOIN dbo.People p WITH (NOLOCK) ON rd.UserPeopleId = p.PeopleId
36-
WHERE rd.UserPeopleId IS NOT NULL AND rd.Completed = 1 AND p.IsDeceased = 0
37-
GROUP BY YEAR(rd.Stamp), rd.UserPeopleId
38-
),
39-
FormsRegCount AS (
40-
SELECT YEAR(rp.CompletedDate) AS ActivityYear, rp.PeopleId, COUNT(*) AS rCount
41-
FROM dbo.RegPeople rp WITH (NOLOCK)
42-
JOIN dbo.People p WITH (NOLOCK) ON rp.PeopleId = p.PeopleId
43-
WHERE rp.PeopleId IS NOT NULL AND rp.[Status] = 2 AND p.IsDeceased = 0
44-
GROUP BY YEAR(rp.CompletedDate), rp.PeopleId
45-
),
46-
RegistrationCount AS (
47-
SELECT ActivityYear, PeopleId, SUM(rCount) AS rCount
48-
FROM (
49-
SELECT ActivityYear, PeopleId, rCount FROM LegacyRegCount
50-
UNION ALL
51-
SELECT ActivityYear, PeopleId, rCount FROM FormsRegCount
52-
) r
53-
GROUP BY ActivityYear, PeopleId
54-
),
55-
Registrants AS (
56-
SELECT ActivityYear, PeopleId FROM RegistrationCount WHERE rCount >= 2
57-
),
58-
PPL AS (
59-
SELECT ActivityYear, PeopleId FROM PeopleFromGiving
60-
UNION ALL
61-
SELECT ActivityYear, PeopleId FROM Attenders
62-
UNION ALL
63-
SELECT ActivityYear, PeopleId FROM Registrants
64-
),
65-
DistinctPPL AS (
66-
SELECT ActivityYear, PeopleId
67-
FROM PPL
68-
GROUP BY ActivityYear, PeopleId
69-
)
70-
SELECT ActivityYear, COUNT(*) AS ActiveCount
71-
FROM DistinctPPL
72-
GROUP BY ActivityYear
73-
ORDER BY ActivityYear DESC
8+
WITH FamiliesGiving AS (SELECT YEAR(cc.ContributionDate) AS ActivityYear, p.FamilyId
9+
FROM dbo.Contribution cc WITH (NOLOCK)
10+
JOIN dbo.People p WITH (NOLOCK) ON p.PeopleId = cc.PeopleId
11+
WHERE cc.ContributionTypeId IN (1, 5, 8, 9, 10, 20)
12+
AND p.IsDeceased = 0
13+
GROUP BY YEAR(cc.ContributionDate), p.FamilyId
14+
HAVING COUNT(*) >= 1),
15+
PeopleFromGiving AS (SELECT fg.ActivityYear, p.PeopleId
16+
FROM FamiliesGiving fg
17+
JOIN dbo.People p WITH (NOLOCK) ON p.FamilyId = fg.FamilyId
18+
WHERE p.IsDeceased = 0),
19+
Attenders AS (SELECT YEAR(a.MeetingDate) AS ActivityYear, a.PeopleId
20+
FROM dbo.Attend a WITH (NOLOCK)
21+
JOIN dbo.People p WITH (NOLOCK) ON p.PeopleId = a.PeopleId
22+
WHERE a.AttendanceFlag = 1
23+
AND p.IsDeceased = 0
24+
GROUP BY YEAR(a.MeetingDate), a.PeopleId
25+
HAVING COUNT(*) >= 2),
26+
LegacyRegCount AS (SELECT YEAR(rd.Stamp) AS ActivityYear, rd.UserPeopleId AS PeopleId, COUNT(*) AS rCount
27+
FROM dbo.RegistrationData rd WITH (NOLOCK)
28+
JOIN dbo.People p WITH (NOLOCK) ON rd.UserPeopleId = p.PeopleId
29+
WHERE rd.UserPeopleId IS NOT NULL
30+
AND rd.Completed = 1
31+
AND p.IsDeceased = 0
32+
GROUP BY YEAR(rd.Stamp), rd.UserPeopleId),
33+
FormsRegCount AS (SELECT YEAR(rp.CompletedDate) AS ActivityYear, rp.PeopleId, COUNT(*) AS rCount
34+
FROM dbo.RegPeople rp WITH (NOLOCK)
35+
JOIN dbo.People p WITH (NOLOCK) ON rp.PeopleId = p.PeopleId
36+
WHERE rp.PeopleId IS NOT NULL
37+
AND rp.[Status] = 2
38+
AND p.IsDeceased = 0
39+
GROUP BY YEAR(rp.CompletedDate), rp.PeopleId),
40+
RegistrationCount AS (SELECT ActivityYear, PeopleId, SUM(rCount) AS rCount
41+
FROM (SELECT ActivityYear, PeopleId, rCount
42+
FROM LegacyRegCount
43+
UNION ALL
44+
SELECT ActivityYear, PeopleId, rCount
45+
FROM FormsRegCount) r
46+
GROUP BY ActivityYear, PeopleId),
47+
Registrants AS (SELECT ActivityYear, PeopleId
48+
FROM RegistrationCount
49+
WHERE rCount >= 2),
50+
PPL AS (SELECT ActivityYear, PeopleId
51+
FROM PeopleFromGiving
52+
UNION ALL
53+
SELECT ActivityYear, PeopleId
54+
FROM Attenders
55+
UNION ALL
56+
SELECT ActivityYear, PeopleId
57+
FROM Registrants),
58+
DistinctPPL AS (SELECT ActivityYear, PeopleId
59+
FROM PPL
60+
GROUP BY ActivityYear, PeopleId)
61+
SELECT ActivityYear, COUNT(*) AS ActiveCount
62+
FROM DistinctPPL
63+
GROUP BY ActivityYear
64+
ORDER BY ActivityYear DESC

0 commit comments

Comments
 (0)