Solved

List records where values do not exist

Posted on 2009-07-10
5
168 Views
Last Modified: 2013-11-26
I have the following query that lists all employees for a time frame and all the paycodes for each employee.  What I need to return is only the employees that do not have certain paycodes in that timeframe.  We are basically looking for any employee that was not out sick for a 6 month period.  All I need returned is the number,name, and hoursperperiod.  I'm attachching a spreadsheet of what the data looks like now, along with my query.  I am writing in Visual Studio 2005, and we have SQL Server 2005.  

If an employee has any of the following paycodes, I do not want their name to appear in the result set:  ABS, SICK, UNPDSICK,SUSPEND

Thanks!
select number,hoursperperiod,name,paycode
from payrollview.dbo.ppperemployeefile p inner join kronos.dbo.hoursbyday k on 
k.empnum = p.number inner join payrollview.dbo.ppperemppositionfields e on e.employeeppper = p.employeeppper
where (hoursperperiod between '48' and '80') and (date between '01/01/2009' and '06/30/2009')
group by number,hoursperperiod,name,paycode
order by paycode

Open in new window

KronosQuerySample.xls
0
Comment
Question by:palmer9
  • 3
  • 2
5 Comments
 
LVL 17

Expert Comment

by:pssandhu
ID: 24823541
I have not seen the data but I think this should do it:
select 	number,
		hoursperperiod,
		name,
		paycode
from	payrollview.dbo.ppperemployeefile p inner join kronos.dbo.hoursbyday k 
		on k.empnum = p.number inner join payrollview.dbo.ppperemppositionfields e 
		on e.employeeppper = p.employeeppper
where (hoursperperiod between '48' and '80') and (date between '01/01/2009' and '06/30/2009')
		and paycode not in ('ABS', 'SICK', 'UNPDSICK','SUSPEND')
group by number,hoursperperiod,name,paycode
order by paycode

Open in new window

0
 

Author Comment

by:palmer9
ID: 24823570
Hi - I tried that, but it lists the employee anyhow for all the other paycodes that exist for them.  I need the employee excluded all together if they have one of those qualifying paycodes.  
0
 
LVL 17

Accepted Solution

by:
pssandhu earned 500 total points
ID: 24823598
okay.. I see. Try this:
select 	number,
		hoursperperiod,
		name,
		paycode
from	payrollview.dbo.ppperemployeefile p inner join kronos.dbo.hoursbyday k 
		on k.empnum = p.number inner join payrollview.dbo.ppperemppositionfields e 
		on e.employeeppper = p.employeeppper
where (hoursperperiod between '48' and '80') and (date between '01/01/2009' and '06/30/2009')
		and empnum not in ( select 	number
							from	payrollview.dbo.ppperemployeefile p inner join kronos.dbo.hoursbyday k 
									on k.empnum = p.number inner join payrollview.dbo.ppperemppositionfields e 
									on e.employeeppper = p.employeeppper
							where (hoursperperiod between '48' and '80') and (date between '01/01/2009' and '06/30/2009')
								   and paycode IN ('ABS', 'SICK', 'UNPDSICK','SUSPEND')
							)
group by number,hoursperperiod,name,paycode
order by paycode

Open in new window

0
 

Author Closing Comment

by:palmer9
ID: 31602073
Perfect - Thank you!!!
0
 
LVL 17

Expert Comment

by:pssandhu
ID: 24823637
No problem!
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

More often than not, we developers are confronted with a need: a need to make some kind of magic happen via code. Whether it is for a client, for the boss, or for our own personal projects, the need must be satisfied. Most of the time, the Framework…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question