GRAPH_ID_FROM_NODE_ID (Transact-SQL)
Applies to: SQL Server 2017 (14.x) and later Azure SQL Database Azure SQL Managed Instance
Returns the internal graph ID for a given node ID.
Syntax
GRAPH_ID_FROM_NODE_ID ( node_id )
Arguments
node_id
The character representation (JSON) for one of the below:
- The
$node_id
pseudo-column for a node table. - The
$from_id
pseudo-column for an edge table. - The
$to_id
column for an edge table.
Return value
Returns the internal graph ID, which is a bigint.
Remarks
- Owing to the performance overhead of parsing and validating the supplied character representation (JSON) of nodes, you should only use
GRAPH_ID_FROM_NODE_ID
where needed. In most cases, MATCH should be sufficient for queries over graph tables. - For
GRAPH_ID_FROM_NODE_ID
to return a value, the supplied character representation (JSON) must be valid and the namedschema.table
within the JSON, must be a valid node table. - If a graph ID is returned by the function, it's only guaranteed that it will be a valid integer. No checks are made whether the graph ID is present in the node table.
- The data type and behavior of graph IDs are implementation specific details, and are subject to change. For example, you shouldn't assume that graph IDs in a given node table are sequential.
Examples
The following example returns the internal graph ID for the nodes in the Person
node table.
SELECT GRAPH_ID_FROM_NODE_ID($node_id)
FROM Person;
Here are the results:
...
1764
1806
19051
...