次の方法で共有


チュートリアル: GQL を使用してグラフにクエリを実行する

現在、この機能はパブリック プレビュー段階にあります。 このプレビュー版はサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳細については、「 Microsoft Azure プレビューの追加使用条件」を参照してください。

このチュートリアルの手順では、コード エディターで GQL (Graph クエリ言語) を使用してグラフのクエリを実行します。 GQL は、複雑なグラフ パターンと分析のための強力なクエリ機能を提供します。

コード エディター モードに切り替える

次の手順に従ってコード エディターに切り替え、GQL を使用してグラフのクエリを開始します。

  1. グラフのホーム ページに移動します。

  2. 上部のメニューから [コード エディター ] を選択します。

    [コード エディター] を選択した結果を示すスクリーンショット。

基本的なクエリを実行する

  1. 入力フィールドに GQL クエリを入力します。 たとえば、すべての注文をカウントします。

    MATCH (n:`Order`) RETURN count(n) AS num_orders
    
  2. [ クエリの実行 ] を選択してクエリを実行します。

このクエリは、 Order ラベルを持つすべてのノードを検索してカウントし、合計を num_ordersとして返します。 グラフにデータがあることを確認する簡単な方法です。 次の図は、クエリの結果を示しています。

すべての注文をカウントする GQL クエリを実行した結果を示すスクリーンショット。

GQL でクエリ ビルダー クエリを再作成する

前の チュートリアルの手順では、クエリ ビルダーを使用して、特定の顧客が購入した製品を検索しました。 GQL で記述されたのと同じクエリを次に示します。

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

このクエリ:

  1. 一致するパターン: 顧客→購入→注文→に含まれる→製品
  2. 顧客「Carla Adams」のフィルター
  3. 顧客の氏名、注文の詳細、製品名をします。

次の図は、クエリの結果を示しています (返されたデータの一部のみが表示されます)。

Carla Adams によって購入された製品を見つけるために GQL クエリを実行した結果を示すスクリーンショット。

複雑なクエリを実行する

一致するグラフ パターン、フィルター処理、集計、並べ替え、および制限を組み合わせた、より複雑なクエリを実行できます。

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

このクエリ:

  1. サプライ チェーンを介してベンダーと製品を結び付け、注文を製品に結び付けるパターンに一致します。
  2. [ツーリング バイク] カテゴリの製品のフィルター
  3. ベンダー名とサブカテゴリ名の変数を定義します。
  4. ベンダー名、サブカテゴリ名、個別の製品数、および注文数をします。
  5. ベンダーとサブカテゴリごとに結果をグループ化します。
  6. 結果を 注文数の多い順に並べ替えます。
  7. 結果を上位 5 に制限します。

まとめると、"ツーリング バイク" カテゴリの製品を提供している上位 5 社のベンダーと、提供する製品の数と、それらの製品の注文数が表示されます。

GQL クエリを実行して、'Touring Bikes' カテゴリの製品を提供している上位 5 社のベンダーを見つけた結果を示すスクリーンショット。

GQL 言語のサポートの詳細については、以下を参照してください。

次のステップ