我需要查询cosmos db中具有分层链接的容器。
假设我们有餐桌员工:
EMP_ID | MANAGER_ID | NAME
120 | 110 | 'JOHN'
110 | 100 | 'MIKE'
100 | NULL | 'PAM'
如果我查询EMP_ID 100,则查询应返回ID为100或位于“ PAM”下的所有员工。我进行了一些研究,发现ORACLE sql支持CONNECT BY。在postgres中,这可以通过递归CTE来完成。我已经在cosmos db sql API中尝试了这两种方法,但似乎都没有用。 cosmos db中是否有一些开箱即用的支持,可以支持这些类型的查询?
答案 0 :(得分:0)
您要查看的行为与加入多个文档有关,Cosmos DB中不支持该行为。您已经正确提到了出于相同目的在oracle中使用CONNECT BY。
查询的答案在于正确设计模型以解决上述情况。我鼓励您阅读下面的链接,这些链接在其上都有很好的描述。
但是,如果您使用任何SDK连接到Cosmos DB,则只需编写“ 选择条件查询 ”,然后使用内置库(LINQ或任何其他方式)来根据需要通过 建模结果,尽管不建议这样做。