| 
                
Please start any new threads on our new 
    site at https://forums.sqlteam.com.  We've got lots of great SQL Server
    experts to answer whatever question you can come up with. 
    
        | 
                
                    | 
                            
                                | Author | Topic |  
                                    | Blessed1978Yak Posting Veteran
 
 
                                        97 Posts | 
                                            
                                            |  Posted - 2014-11-19 : 20:26:43 
 |  
                                            | i get an error on the below when I am trying to remove duplicates. basically I can have a empid in the system more than once however I just want the empid that has emp_name, email_address populated , the ones with null i want to remove, there are however emp id's that are in the system only once that  dont have emp_names that are not considered  duplicate so if I say where emp_name is not null it will remove valid emp id's in the system .(I want those to stay) not removed  thus I added case statements within my querySelect CASE WHEN (count (c.emp_id)) = 1 AND i.emp_name IS NOT NULL AND c.emp_eml_address IS NOT null THEN c.emp_id WHEN (count (c.emp_id)) > 1 THEN (SELEct distinct c.emp_id FROM employee c WHERE c.emp_name  IS NOT null and c.emp_eml_address  is not null  )end AS [EmpID],I.emp_name AS [EmpName],I.emp_eml_address AS [Email],ix.date_Start AS [EmpStartDate],ix.change_date AS [EmpChangeDate],ix.end_date As [EmpEndDate],j.Title AS [CEmpTitle]from  employee c (NOLOCK)inner join emp_info I (NOLOCK) on c.key = i.keyLEFT OUTER join emp_dates ix (NOLOCK) on i.key = ix.keyGROUP BY c.emp_id, I.emp_name, I.emp_eml_address, ix.date_Start, ix.change_date, ix.end_date, j.TitleMsg 512, Level 16, State 1, Line 1Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression |  |  
                                    | MuralikrishnaVeeraPosting Yak  Master
 
 
                                    129 Posts | 
                                        
                                          |  Posted - 2014-11-20 : 06:36:37 
 |  
                                          | Error indicates that problem is with the sub query.First execute sub query independently and check or else post some sample data.---------------Murali KrishnaYou live only once ..If you do it right once is enough....... |  
                                          |  |  |  
                                    | IforAged Yak Warrior
 
 
                                    700 Posts | 
                                        
                                          |  Posted - 2014-11-20 : 07:29:28 
 |  
                                          | [code]WITH EmpOrderAS(	SELECT 		c.emp_id AS [EmpID]		,I.emp_name AS [EmpName]		,I.emp_eml_address AS [Email]		,ix.date_Start AS [EmpStartDate]		,ix.change_date AS [EmpChangeDate]		,ix.end_date As [EmpEndDate]		,j.Title AS [CEmpTitle]		,ROW_NUMBER() OVER (PARTITION BY c.emp_id ORDER BY I.emp_name DESC, I.emp_eml_address DESC) AS rn	FROM employee c		JOIN emp_info I			ON c.key = i.key		LEFT JOIN emp_dates ix			ON i.key = ix.key)SELECT EmpID, EmpName, Email, EmpStartDate, EmpChangeDate, EmpEndDate, CEmpTitleFROM EmpOrderWHERE rn = 1	-- may not need this bit	OR (EmpName IS NOT NULL AND Email IS NOT NULL);[/code] |  
                                          |  |  |  
                                |  |  |  |  |  |