Udostępnij przez


Samouczek: wykonywanie zapytań względem grafu przy użyciu języka GQL

Uwaga / Notatka

Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.

W tym kroku samouczka wykonasz zapytanie względem grafu przy użyciu języka GQL (Graph Query Language) w edytorze kodu. GQL zapewnia zaawansowane możliwości wykonywania zapytań na potrzeby złożonych wzorców grafu i analizy.

Przełączanie do trybu edytora kodu

Wykonaj następujące kroki, aby przełączyć się do edytora kodu i rozpocząć wykonywanie zapytań względem grafu przy użyciu biblioteki GQL:

  1. Przejdź do strony głównej swojego grafu.

  2. Wybierz pozycję Edytor kodu w górnym menu.

    Zrzut ekranu przedstawiający wynik wybrania pozycji

Uruchamianie zapytania podstawowego

  1. Wprowadź zapytanie GQL w polu wejściowym. Na przykład zlicz wszystkie zamówienia:

    MATCH (n:`Order`) RETURN count(n) AS num_orders
    
  2. Wybierz pozycję Uruchom zapytanie , aby wykonać zapytanie.

To zapytanie znajduje wszystkie węzły z etykietą Order , zlicza je i zwraca sumę jako num_orders. Jest to prosty sposób potwierdzania, że wykres zawiera dane. Na poniższej ilustracji przedstawiono wynik zapytania:

Zrzut ekranu przedstawiający wynik uruchomienia zapytania GQL w celu zliczenia wszystkich zamówień.

Ponowne tworzenie zapytania konstruktora zapytań w GQL

W poprzednim kroku samouczka użyto konstruktora zapytań do znalezienia produktów zakupionych przez określonego klienta. Oto to samo zapytanie napisane w GQL:

MATCH (c:Customer)-[:purchases]->(o:`Order`)-[:`contains`]->(p:`Product`)
FILTER c.fullName = 'Carla Adams'
RETURN c.fullName, o, p.productName

To zapytanie:

  1. Pasuje do wzorca Klient → dokonuje zakupów → Zamówienie → zawiera → Produkt
  2. Filtry dla klienta o nazwie "Carla Adams"
  3. Zwraca pełną nazwę klienta, szczegóły zamówienia i nazwy produktów

Na poniższej ilustracji przedstawiono wynik zapytania (wyświetlana jest tylko część zwróconych danych).

Zrzut ekranu przedstawiający wynik uruchomienia zapytania GQL w celu znalezienia produktów zakupionych przez Carlę Adams.

Uruchamianie złożonego zapytania

Można uruchamiać bardziej złożone zapytania, które łączą pasujące wzorce grafu, filtrowanie, agregację, sortowanie i ograniczanie:

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

To zapytanie:

  1. Pasuje do wzorca łączącego dostawców z produktami za pośrednictwem łańcucha dostaw i zamówień na produkty.
  2. Filtry dla produktów w kategorii "Touring Bikes".
  3. Definiuje zmienne dla nazw dostawców i podkategorii.
  4. Zwraca nazwę dostawcy, nazwę podkategorii, unikatową liczbę produktów i liczbę zamówień.
  5. Grupuje wyniki według dostawcy i podkategorii.
  6. Orders wyniki według liczby zamówień w kolejności malejącej.
  7. Ogranicza wyniki do pierwszej 5.

Podsumowując, pokazuje pięciu najlepszych dostawców dostarczających produkty w kategorii "Touring Bikes" wraz z tym, ile produktów dostarcza i ile zamówień mają te produkty.

Zrzut ekranu przedstawiający wynik uruchomienia zapytania GQL w celu znalezienia pięciu najlepszych dostawców dostarczających produkty w kategorii

Aby uzyskać więcej informacji na temat obsługi języka GQL, zobacz:

Następny krok