sql - Two counts in three tables -


i trying count 2 columns using following query:

select distinct [district],    count (distinct [student identifier statewide california])           '11-12 enrollment',   (select count (distinct incdtkey)  [dbo].[disciplinestudentfile1112] grdlvlkey in ('15', '01', '02', '03', '04',                          '05', '06', '07', '08', '09',                          '10', '11', '12', '18', '19')) total_incidents    dbo.ssid1112studentenrollmentrecords (nolock) inner join    [dbo].[schooldetail] on cdscode = dbo.ssid1112studentenrollmentrecords.cdsorig     [enrollstatcodeorig] '10' ,    [grade level code] in ('ps', 'kn', '01', '02', '03',                           '04', '05', '06', '07', '08',                           '09', '10', '11', '12', 'ue', 'us') group [district] order [district] 

my results are:

district      11-12 enrollment  total_incidents ab unified          20662                896371 ce unified          5387                 896371 dr unified          526                  896371 fj unified          1506                 896371 kt unified          8415                 896371 

i can't figure out how individual counts in total_incidents column instead of total 896371 count?

an easy approach correlate subquery outer query:

select distinct sd.district,   count ( distinct ser.[student identifier statewide california] ) [11-12 enrollment],   ( select count( distinct dsf.incdtkey ) dbo.disciplinestudentfile1112 dsf     dsf.grdlvlkey in ( '15', '01', '02', '03', '04', '05', '06', '07', '08', '09',        '10', '11', '12', '18', '19' ) , -- note additional condition here.       dsf.district = sd.district ) total_incidents dbo.ssid1112studentenrollmentrecords ser (nolock) inner join    dbo.schooldetail sd on sd.cdscode = ser.cdsorig ser.enrollstatcodeorig '10' ,    [grade level code] in ( 'ps', 'kn', '01', '02', '03', '04', '05', '06', '07', '08',    '09', '10', '11', '12', 'ue', 'us' ) group sd.district order sd.district 

i have made assumptions table schemas. recommend when using joins supply alias each table , use alias on every reference avoid confusion.

an alternative solution use join disciplinestudentfile1112 , summarize results using group by.


Comments

Popular posts from this blog

ios - iPhone/iPad different view orientations in different views , and apple approval process -

php - HTTP_REFERER woes: How can I allow access to a specific page, only when a visitor has visited another specific page beforehand? -

java Extracting Zip file -