6.8.2.1 プロパティ・グラフ・ビューでサポートされているPGQL機能

oracle.pg.rdbms.pgqlパッケージのJava APIは、PGQL SELECT問合せの実行をサポートしますが、いくつかの例外があります。詳細は、プロパティ・グラフ・ビューでのPGQLの制限事項を参照してください。

プロパティ・グラフ・ビューに対する再帰的問合せの実行は、次の機能でサポートされています。

  • 再帰的問合せは、次の可変長パス検索の目標でサポートされています。
    • 到達可能性
    • ANY
    • ANY SHORTEST
    • TOP k SHORTEST
  • 再帰的問合せは、次の水平集計でサポートされています。
    • LISTAGG
      SELECT LISTAGG(src.first_name || ' ' || src.last_name, ',')
      FROM MATCH TOP 2 SHORTEST ( (n:Person) ((src)-[e:knows]->)* (m:Person) )
      WHERE n.id = 1234
    • SUM
      SELECT SUM(e.weight + 3)
      FROM MATCH TOP 2 SHORTEST ( (n:Person) -[e:knows]->* (m:Person) )
      WHERE n.id = 1234
    • COUNT
      SELECT COUNT(e)
      FROM MATCH TOP 2 SHORTEST ( (n:Person) -[e:knows]->* (m:Person) )
      WHERE n.id = 1234
    • AVG
      SELECT AVG(dst.age)
      FROM MATCH TOP 2 SHORTEST ( (n:Person) (-[e:knows]->(dst))* (m:Person) )
      WHERE n.id = 1234
    • MIN (プロパティ値またはCAST式の場合のみ)
      SELECT MIN(CAST(dst.age + 5 AS INTEGER))
      FROM MATCH TOP 2 SHORTEST ( (n:Person) (-[e:knows]->(dst))* (m:Person) )
      WHERE n.id = 1234
    • MAX (プロパティ値またはCAST式の場合のみ)
      SELECT MAX(dst.birthday)
      FROM MATCH TOP 2 SHORTEST ( (n:Person) (-[e:knows]->(dst))* (m:Person) )
      WHERE n.id = 1234

再帰的問合せの問合せパフォーマンスを向上させるための推奨プラクティスの詳細は、PGQL問合せでのパフォーマンスの考慮事項を参照してください。