5.11 Supported Features and Limitations for Querying a SQL Property Graph

This section provides the list of supported and unsupported features for querying a SQL Property Graph.

Supported Features

  • Single label, no label, label disjunction and label conjunction are supported in label expressions inside a graph pattern. For more information, see:
  • Any directed edge patterns (MATCH (a)-[e]-(b) are supported.

    See Example 5-7.

  • Anonymous vertex (MATCH ()-[e]->()) and edge (MATCH (a)-[]->(b)) variables are supported.

    See Example 5-8.

  • Complex path pattern queries are supported.

    See Example 5-9, Example 5-10 and Example 5-11.

  • Bounded recursive path pattern queries are supported.

    See Example 5-14.

  • Bind variables are supported inside a WHERE clause.

    See Example 5-16.

  • VERTEX_ID and EDGE_ID operators that uniquely identify a vertex and an edge respectively can be used within a SQL graph query.
  • VERTEX_EQUAL and EDGE_EQUAL predicates for matching vertex and edge identifiers are supported.
  • SQL and JSON expressions are supported inside WHERE and COLUMNS clauses.

    See Example 4-7.

  • JSON simplified syntax is supported to access properties of type JSON.

    See Example 4-7.

  • PL/SQL functions are supported inside a WHERE or COLUMNS clause.

    See Example 5-17.

  • Single line and multi-line comments are supported within a graph query.
  • All identifiers within the GRAPH_TABLE operator in a SQL graph query, such as graph names, alias names, graph element pattern variable names, labels and property names follow the standard SQL rules about case sensitivity:
    • Identifiers within double quotes are case sensitive.
    • Identifiers not enclosed in double quotes are implicitly converted to uppercase and enclosed in double quotes.
  • SQL hints are supported inside and outside the SQL graph query for tuning.

    See Tuning SQL Property Graph Queries for more information.

  • You can query a graph defined in another schema if you have the required privileges.

    See Granting System and Object Privileges for SQL Property Graphs for more information.

Limitations

  • Variable-length pattern matching goals (such as ANY, ALL, ALL SHORTEST, ANY CHEAPEST, and so on) are not supported.
  • Path pattern variables (MATCH p = (n)-[e]->(m)) are not supported.
  • Clauses such as COST and TOTAL_COST are not supported.
  • Inline subqueries and LATERAL inline views are not supported.
  • SQL Macros are not supported.