2012-04-13 58 views
0

我想通過經理的名字查詢團隊中的所有成員。例如,如果managerA有兩個直接的報告:managerB和employee1。經理B有兩個直接的報告:員工2和員工3。我想要獲得經理A的所有成員:經理B,員工1,員工2和員工3。如何通過SQL Server查詢LDAP中的嵌套成員

如果我使用下面的查詢,我只能得到成員:managerB和employee1。我如何查詢嵌套成員?謝謝!

Select * from openquery 
(
     ADSI,'Select CN from ''LDAP://mydomain.com'' 
     WHERE objectCategory = ''Person'' AND objectClass = ''user'' 
     AND manager = ''CN=managerA,OU=Users,OU=Accounts,DC=mydomain,DC=com'' 
     order by CN 
'); 
+0

SQL Server中可用的ADO接口**非常有限**,並且不允許執行高級查詢,如獲取嵌套成員等。 – 2012-04-13 20:22:09

+0

哦...所以有什麼建議? – user984859 2012-04-13 20:48:35

+0

不是真的 - 基本上你只需要自己處理它,多次查詢AD .... – 2012-04-13 20:52:53

回答

0

如果它是便宜(和有意義!)拉你LDAP數據到SQLServer的,也許你可以做到這一點,然後再運行SQLServer的中遞歸查詢。這實際上對你想要完成的事情來說是完美的。如果您需要某個想法的示例,我回答了另一個遞歸問題here