Sql problem with my query -


select        dbo.pi_employee.emp_firstname, dbo.pi_employee.emp_lastname,     dbo.pi_employee.emp_no, dbo.pi_employee.emp_cnic,     dbo.pi_employee.emp_currentadd, dbo.pi_employee.emp_cellph,     dbo.pi_employee.emp_birthday, pi_jobtitle_1.jobtitle_name,     dbo.pi_employee.emp_joindate, dbo.pi_education.edu_degree,     dbo.pi_education.edu_year, dbo.pi_employee.emp_pension,     dbo.pi_employee.emp_age, dbo.pi_employee.emp_service,     dbo.pi_employee.emp_terminate, dbo.pi_employee.emp_termdate,     dbo.pi_employee.emp_basicofpay, dbo.pi_employee.emp_terminationreason,     dbo.pi_employee.emp_terminationdate, dbo.pi_employee.emp_status,     dbo.pi_employee.emp_gender, dbo.pi_employee.emp_maritalstatus,     dbo.pi_employee.emp_paymethod, dbo.pi_employee.emp_leaveentitle,     dbo.pi_employee.emp_confirmation, dbo.pi_employee.emp_title,     dbo.pi_employee.emp_basicamount, dbo.pi_salgrade.salgrade_name,     dbo.tbl_emp_status.statusname, dbo.pi_skills.skill_type,     dbo.pi_location.loc_name, pi_location_1.loc_name wcity,     dbo.pi_jobtitlehist.jthsalegradetype, dbo.pi_workexp.exp_serperiod,     dbo.pi_employee.emp_domicile, dbo.pi_skills.skill_type skill,     dbo.pi_skills.skill_exp, dbo.pi_education.edu_degree degree,     dbo.pi_education.edu_uni, dbo.pi_education.edu_distinction,     dbo.pi_lochistory.lhstart_date, dbo.pi_lochistory.lhend_date             dbo.pi_location  right outer join    dbo.pi_workexp  right outer join    dbo.pi_employee on dbo.pi_workexp.emp_no = dbo.pi_employee.emp_no  left outer join    dbo.pi_jobtitlehist on dbo.pi_employee.emp_no = dbo.pi_jobtitlehist.emp_no on                    dbo.pi_location.loc_id = dbo.pi_employee.emp_location_id  left outer join    dbo.pi_salgrade on dbo.pi_employee.emp_salgrade_id = dbo.pi_salgrade.salgrade_id    left outer join    dbo.tbl_emp_status on dbo.pi_employee.emp_status = dbo.tbl_emp_status.statusid  left outer join    dbo.pi_skills on dbo.pi_employee.emp_no = dbo.pi_skills.emp_no  left outer join    dbo.pi_location pi_location_1  inner join    dbo.pi_lochistory on pi_location_1.loc_id = dbo.pi_lochistory.loc_id on dbo.pi_employee.emp_no = dbo.pi_lochistory.emp_no  left outer join    dbo.pi_education on dbo.pi_employee.emp_no = dbo.pi_education.emp_no  left outer join    dbo.pi_jobtitle pi_jobtitle_1 on dbo.pi_employee.emp_jobtitle_id = pi_jobtitle_1.jobtitle_id 

i writing sql query implement different scenario, problem gives repeated values. write distinct , order result same can 1 me solve issue.


edit – same query table names aliased:

select        em.emp_firstname, em.emp_lastname,     em.emp_no, em.emp_cnic,     em.emp_currentadd, em.emp_cellph,     em.emp_birthday, jt.jobtitle_name,     em.emp_joindate, ed.edu_degree,     ed.edu_year, em.emp_pension,     em.emp_age, em.emp_service,     em.emp_terminate, em.emp_termdate,     em.emp_basicofpay, em.emp_terminationreason,     em.emp_terminationdate, em.emp_status,     em.emp_gender, em.emp_maritalstatus,     em.emp_paymethod, em.emp_leaveentitle,     em.emp_confirmation, em.emp_title,     em.emp_basicamount, sg.salgrade_name,     es.statusname, s.skill_type,     l.loc_name, l1.loc_name wcity,     jh.jthsalegradetype, we.exp_serperiod,     em.emp_domicile, s.skill_type skill,     s.skill_exp, ed.edu_degree degree,     ed.edu_uni, ed.edu_distinction,     lh.lhstart_date, lh.lhend_date             dbo.pi_location l right outer join    dbo.pi_workexp right outer join    dbo.pi_employee em on we.emp_no = em.emp_no  left outer join    dbo.pi_jobtitlehist jh on em.emp_no = jh.emp_no on l.loc_id = em.emp_location_id  left outer join    dbo.pi_salgrade sg on em.emp_salgrade_id = sg.salgrade_id    left outer join    dbo.tbl_emp_status es on em.emp_status = es.statusid  left outer join    dbo.pi_skills s on em.emp_no = s.emp_no  left outer join    dbo.pi_location l1  inner join    dbo.pi_lochistory lh on l1.loc_id = lh.loc_id on em.emp_no = lh.emp_no  left outer join    dbo.pi_education ed on em.emp_no = ed.emp_no  left outer join    dbo.pi_jobtitle j on em.emp_jobtitle_id = j.jobtitle_id 

yeah, since you're doing crap ton of cartesian products joins without on clauses, cause plenty of seem 'repeated values', product of 2 tables combining sets.


Comments