J'ai une table auto-référencement (clients) et une table qui reliera à un enregistrement dans ce tableau (Entreprises) à savoirHierarchial SQL Query
Customers Companies
********* *********
ID ID
ManagerID --> DirectorID
ManagerID fait référence à un autre enregistrement dans la table des clients.
Je dois effectuer une requête où, en donnant un identifiant client spécifique, elle trouvera la société à laquelle ce client appartient. Si je devais le faire en C#, il ressemblerait à quelque chose comme (ce qui est un exemple de code, non fonctionnel):
public static Company FindCompany(Customer customer)
{
while (customer.ManagerID != null)
{
customer = customer.GetManager();
}
return Company.FindByDirector(customer.ID);
}
Donc il y a 2 étapes:
1) Traverse la table des clients (via ManagerID) jusqu'à ce que nous trouvions un client sans gestionnaireID. (Le Directeur)
2) Trouvez la Société relative à ce Client.
Quelqu'un peut-il m'aider?
Merci.
+1 - sont CTEs le chemin à parcourir dans SQL Server 2005 partir pour la construction des hiérarchies –
je peaufiné ce un peu et ai eu à travailler grâce. Cette requête est-elle possible avec LINQ? – James
@ James: désolé, je ne sais pas. – gbn