Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
A inner_nodes() função de grafo permite o acesso aos nós internos de uma borda de comprimento variável. Ele só pode ser usado como o primeiro parâmetro das funções de grafo all(), any()e map( ).
Observação
Essa função é usada com o operador de correspondência de grafo, o operador graph-shortest-paths, a função de grafo all(), a função de grafo any() e a função de grafo map().
Sintaxe
inner_nodes(
borda)
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| edge | string |
✔️ | Uma borda de comprimento variável do operador de correspondência de grafo ou do padrão do operador graph-shortest-paths . Para obter mais informações, consulte a notação de padrão do Graph. |
Devoluções
Define o escopo de execução da expressão ou map do allany nó interno de uma borda de comprimento variável.
Exemplos
O exemplo nesta seção mostra como usar a sintaxe para ajudá-lo a começar.
Localizar todos os funcionários na organização de um gerente
O exemplo a seguir representa uma hierarquia organizacional. Ele mostra como uma borda de comprimento variável em uma única consulta de grafo pode ser usada para localizar funcionários em vários níveis dentro de uma hierarquia organizacional. Os nós no grafo representam os funcionários e as bordas conectam um funcionário ao gerente. Depois que o grafo é criado usando o make-graph operador, as funções e inner_nodes as all() funções são usadas para procurar funcionários na organização de Alice, além de Alice, que tem gerentes com menos de 40 anos. Em seguida, map() e inner_nodes são usados juntos para obter os nomes desses gerentes.
let employees = datatable(name:string, age:long)
[
"Alice", 32,
"Bob", 31,
"Eve", 27,
"Joe", 29,
"Chris", 45,
"Alex", 35,
"Ben", 23,
"Richard", 39,
];
let reports = datatable(employee:string, manager:string)
[
"Bob", "Alice",
"Chris", "Alice",
"Eve", "Bob",
"Ben", "Chris",
"Joe", "Alice",
"Richard", "Bob"
];
reports
| make-graph employee --> manager with employees on name
| graph-match (manager)<-[reports*1..5]-(employee)
where manager.name == "Alice" and all(inner_nodes(reports), age < 40)
project employee = employee.name, manager = manager.name, reportingPath = map(inner_nodes(reports), name)
Saída
| empregado | gerente | reportingPath |
|---|---|---|
| Carlos | Alice | [] |
| Chris | Alice | [] |
| Joe | Alice | [] |
| Ev | Alice | ["Bob"] |
| Richard | Alice | ["Bob"] |