Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Přepněte služby pomocí rozevíracího seznamu Verze . Přečtěte si další informace o navigaci.
Platí pro: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Funkce all() grafu vyhodnocuje podmínku pro každý okraj nebo vnitřní uzel podél proměnné cesty délky .
Poznámka:
Tato funkce se používá s operátory porovnávání grafů a nejkratších cest grafu .
Syntaxe
all(
okraj,podmínka)
all(inner_nodes(
okraj),podmínka)
Parametry
| Název | Typ | Povinné | Popis |
|---|---|---|---|
| okraj | string |
✔️ | Hrana délky proměnné ze vzoru operátoru shody grafu nebo operátoru nejkratších cest grafu . Další informace najdete v článku Zápis schématu grafu. |
| podmínka | string |
✔️ | Logický výraz složený z vlastností hraničního nebo vnitřního uzlu při použití inner_nodes v okraji proměnné délky. Na vlastnost se odkazuje přímo pomocí názvu vlastnosti. Výraz se vyhodnocuje pro každý okraj nebo vnitřní uzel na okraji proměnné délky. |
Návraty
Vrátí true , pokud se podmínka vyhodnotí jako true pro každý okraj nebo vnitřní uzel, pokud se použije inner_nodes v okraji proměnné délky. V opačném případě vrátí false.
U cest nulové délky se podmínka vyhodnotí jako true.
Příklady
Následující příklad ukazuje, jak pomocí operátoru graph-matchall() s funkcí najít všechny cesty zpáteční cesty mezi dvěma stanicemi v přepravní síti. Pro každý směr používá jinou čáru. Dotaz vytvoří graf z connections dat, vyhledá všechny cesty až pět připojení, která používají "red" čáru pro vnější trasu a čáru "blue" pro zpáteční trasu. Funkce all() zajišťuje, že všechny hrany v hraně s proměnlivou délkou jsou součástí stejné čáry, buď "red" nebo "blue".
let connections = datatable(from_station:string, to_station:string, line:string)
[
"Central", "North", "red",
"North", "Central", "red",
"Central", "South", "red",
"South", "Central", "red",
"South", "South-West", "red",
"South-West", "South", "red",
"South-West", "West", "red",
"West", "South-West", "red",
"Central", "East", "blue",
"East", "Central", "blue",
"Central", "West", "blue",
"West", "Central", "blue",
];
connections
| make-graph from_station --> to_station with_node_id=station
| graph-match (start)-[outward*1..5]->(destination)-[return*1..5]->(start)
where start.station != destination.station and
all(outward, line == "red") and
all(return, line == "blue")
project from = start.station,
outward_stations = strcat_array(map(inner_nodes(outward), station), "->"),
to = destination.station,
return_stations = strcat_array(map(inner_nodes(return), station), "->"),
back=start.station
Výstup
| od | outward_stations | na | return_stations | hřbet |
|---|---|---|---|---|
| Střed | >Středojižní>>South-West | Západ | Střed | |
| Západ | Jih-západ-jih-jih-střed-sever>>> | Střed | Západ | |
| Střed | Jih –>South-West | Západ | Střed | |
| Západ | Jih-západ –>jih | Střed | Západ | |
| Střed | >Středojižní>>South-West | Západ | Střed–>východ | Střed |
| Západ | Jih-západ-jih-jih-střed-sever>>> | Střed | Východ –> střed | Západ |
| Střed | Jih –>South-West | Západ | Střed–>východ | Střed |
| Západ | Jih-západ –>jih | Střed | Východ –> střed | Západ |
Následující příklad ukazuje, jak pomocí operátoru graph-shortest-pathsall() s funkcemi inner_nodes najít cestu mezi dvěma stanicemi v přepravní síti. Dotaz vytvoří graf z connections dat a najde nejkratší cestu ze "South-West" stanice k "North" stanici a prochází stanicemi, kde je k dispozici Wi-Fi.
let connections = datatable(from_station:string, to_station:string, line:string)
[
"Central", "North", "red",
"North", "Central", "red",
"Central", "South", "red",
"South", "Central", "red",
"South", "South-West", "red",
"South-West", "South", "red",
"South-West", "West", "red",
"West", "South-West", "red",
"Central", "East", "blue",
"East", "Central", "blue",
"Central", "West", "blue",
"West", "Central", "blue",
];
let stations = datatable(station:string, wifi: bool)
[
"Central", true,
"North", false,
"South", false,
"South-West", true,
"West", true,
"East", false
];
connections
| make-graph from_station --> to_station with stations on station
| graph-shortest-paths (start)-[connections*2..5]->(destination)
where start.station == "South-West" and
destination.station == "North" and
all(inner_nodes(connections), wifi)
project from = start.station,
stations = strcat_array(map(inner_nodes(connections), station), "->"),
to = destination.station
Výstup
| od | stanice | na |
|---|---|---|
| Jihozápadní | Středozápad> | Sever |