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.
Poznámka:
Tato funkce je aktuálně ve verzi Public Preview. Tato verze Preview se poskytuje bez smlouvy o úrovni služeb a nedoporučuje se pro produkční úlohy. Některé funkce nemusí být podporované nebo můžou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.
V tomto kroku kurzu budete dotazovat graf pomocí jazyka GQL (Graph Query Language) v editoru kódu. GQL poskytuje výkonné možnosti dotazování pro komplexní grafové vzory a analýzu.
Přepnutí do režimu editoru kódu
Pomocí následujícího postupu přepněte do editoru kódu a začněte dotazovat graf pomocí GQL:
Spuštění základního dotazu
Do vstupního pole zadejte dotaz GQL. Můžete například spočítat všechny objednávky:
MATCH (n:`Order`) RETURN count(n) AS num_ordersVýběrem Spustit dotaz spusťte dotaz.
Tento dotaz najde všechny uzly s Order popiskem, spočítá je a vrátí součet jako num_orders. Je to jednoduchý způsob, jak ověřit, že graf obsahuje data. Následující obrázek znázorňuje výsledek dotazu:
Rekonstrukce dotazu z nástroje Query Builder v GQL
V předchozím kroku kurzu jste použili tvůrce dotazů k vyhledání produktů zakoupených konkrétním zákazníkem. Tady je stejný dotaz napsaný v GQL:
MATCH (c:Customer)-[:purchases]->(o:`Order`)-[:`contains`]->(p:`Product`)
FILTER c.fullName = 'Carla Adams'
RETURN c.fullName, o, p.productName
Tento dotaz:
- Odpovídá vzoru nákupů zákazníka → → Objednávky → obsahuje produkt →
- Filtry pro zákazníka s názvem "Carla Adams"
- Vrátí celé jméno zákazníka, podrobnosti objednávky a názvy produktů.
Následující obrázek ukazuje výsledek dotazu (zobrazí se jenom část vrácených dat).
Proveďte složitý dotaz
Můžete spouštět složitější dotazy, které kombinují odpovídající vzory grafu, filtrování, agregaci, řazení a omezování:
MATCH (v:Vendor)-[:produces]->(p:`Product`)->(sc:`ProductSubcategory`)->(c:`ProductCategory`),
(o:`Order`)-[:`contains`]->(p)
FILTER c.subCategoryName = 'Touring Bikes'
LET vendorName = v.vendorName, subCategoryName = sc.subCategoryName
RETURN vendorName, subCategoryName, count(DISTINCT p) AS num_products, count(o) AS num_orders
GROUP BY vendorName, subCategoryName
ORDER BY num_orders DESC
LIMIT 5
Tento dotaz:
- Odpovídá vzoru, který spojuje dodavatele s produkty prostřednictvím dodavatelského řetězce a zároveň spojuje objednávky s produkty.
- Filtry pro produkty v kategorii Touring Bikes.
- Definuje proměnné pro názvy dodavatelů a podkategorií.
- Vrátí název dodavatele, název podkategorie, počet jedinečných produktů a počet objednávek.
- Seskupuje výsledky podle dodavatele a podkategorie.
- Objednávky výsledků podle počtu objednávek v sestupném pořadí
- Omezí výsledky na prvních 5.
V souhrnu se zobrazuje pět nejlepších dodavatelů dodávajících produkty v kategorii Touring Bikes spolu s tím, kolik produktů dodává a kolik objednávek tyto produkty mají.
Související obsah
Další informace o podpoře jazyka GQL najdete tady: