USE
The USE
clause determines which graph a query, or query part, is executed against.
It is supported for queries and schema commands.
Syntax
The USE
clause can only appear as the prefix of schema commands, or as the first clause of queries:
USE <graph>
<other clauses>
Where <graph>
refers to the name or alias of a database in the DBMS.
Composite database syntax
When running queries against a composite database, the USE
clause can also appear as the first clause of:
-
Union parts:
USE <graph> <other clauses> UNION USE <graph> <other clauses>
-
Subqueries:
CALL () { USE <graph> <other clauses> }
In subqueries, a
USE
clause may appear directly following the variable scope clause:CALL () { … }
(introduced in Neo4j 5.23). Or, if you are using an older version of Neo4j, directly following an importingWITH
clause.
When executing queries against a composite database, the USE
clause must only refer to graphs that are part of the current composite database.
Examples
Query a graph
In this example it is assumed that the DBMS contains a database named myDatabase
:
USE myDatabase
MATCH (n) RETURN n
Query a composite database constituent graph
In this example it is assumed that the DBMS contains a composite database named myComposite
, which includes an alias named myConstituent
:
USE myComposite.myConstituent
MATCH (n) RETURN n
Query a composite database constituent graph dynamically
The built-in function graph.byName()
can be used in the USE
clause to resolve a constituent graph from a STRING
value containing the qualified name of a constituent.
This example uses a composite database named myComposite
that includes an alias named myConstituent
:
USE graph.byName('myComposite.myConstituent')
MATCH (n) RETURN n
The argument can be any expression that evaluates to the name of a constituent graph - for example a parameter:
USE graph.byName($graphName)
MATCH (n) RETURN n
Query a composite database constituent using elementId
The graph.byElementId()
function (introduced in Neo4j 5.13), can be used in the USE
clause to resolve a constituent graph to which a given element id belongs.
In the below example, it is assumed that the DBMS contains a composite database constituent, which contains the element id 4:c0a65d96-4993-4b0c-b036-e7ebd9174905:0
.
If the constituent database is not a standard database in the DBMS an error will be thrown:
.Query
USE graph.byElementId("4:c0a65d96-4993-4b0c-b036-e7ebd9174905:0")
MATCH (n) RETURN n