Afficher un message
Vieux 13/08/2007, 11h58   #1
Hamet
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Jointure entre 3 tables

bonjour

J'ai un problème en transact sql.
J'ai ma table contrat qui a un lien avec ma table employee et ma table
entreprise, j'ai également ma table entreprise qui a un lien avec ma table
employee
Je souhaiterai selectionner les contrats en récupérant le non de l'employee
depuis la table entreprise sauf s'il est pas renseigné ou que
l'idEmployee=550, Dans ces 2 cas je dois passer par la table contrat pour
faire ma jointure avec la table employee. Je souhaiterai faire cela sans
passer par une UNION comme dans l'exemple ci-dessous.
select

CTR.A_Contrat_Id, emp .EmployeeName
from

A_Contrat CTR
INNER

JOIN A_Company_role_contrat cr ON cr .A_Contrat_Id = CTR.A_Contrat_Id and
(cr.a_role like '%S%' )
INNER

JOIN company COM ON cr. company_id=COM.company_id
INNER

JOIN Employee EMP ON ( EMP.Employee_Id = COM.Account_manager_Media ) and
(COM .Account_manager_Media is not null)


Union

select

CTR.A_Contrat_Id, emp .EmployeeName
from

A_Contrat CTR
INNER

JOIN A_Company_role_contrat cr ON cr .A_Contrat_Id = CTR.A_Contrat_Id and
(cr.a_role like '%S%' )
INNER

JOIN company COM ON cr. company_id=COM.company_id
INNER

JOIN Employee EMP ON ( EMP.Employee_Id = ctr.employee_id ) and (COM
..Account_manager_Media is null)

Merci pour votre aide.

Hamet
  Réponse avec citation
 
Page generated in 0,05736 seconds with 9 queries