Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 383
  • Last Modified:

help with SQL conditional report

i have a table (stacked) with variables cipcode, awlevel, unitid, and year.  

im trying to generate a report that will tell me the distinct count of unitid where awlevel=5 and cipcode=45.0601 in 2001 but not 2011.  Basically i need results where cipcode only exists when year=2001 and doesnt exist when year=2011.

so far i have this, which gives me the results for 2001 only
	select count(distinct(unitid)) as Grad11 label="Schools with Graduations",
	from stacked
	where awlevel=5 and cipcode='45.0601' and year=2001;

Open in new window


I think the answer involves nested selects but i cant wrap my head around it.
0
jmichael18
Asked:
jmichael18
1 Solution
 
Brian CroweDatabase AdministratorCommented:
DECLARE @cipcode FLOAT,
   @awlevel INT;

SELECT @cipcode = 45.0201,
   @awlevel = 5

SELECT COUNT (DISTINCT unitid) AS Grad1
FROM stacked AS s2001
LEFT OUTER JOIN stacked AS s2011
   ON s2001.cipcode = s2011.cipcode
WHERE s2001.cipcode = @cipcode
   AND s2001.awlevel = 5
   AND s2011.cipcode IS NULL
0
 
jmichael18Author Commented:
Thanks!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now