Scalar functions
Scalar functions return a single value.
The |
Functions:
1. coalesce()
coalesce()
returns the first non-null
value in the given list of expressions.
Syntax: coalesce(expression [, expression]*)
Returns:
The type of the value returned will be that of the first non- |
Arguments:
Name | Description |
---|---|
|
An expression which may return |
Considerations:
|
MATCH (a)
WHERE a.name = 'Alice'
RETURN coalesce(a.hairColor, a.eyes)
coalesce(a.hairColor, a.eyes) |
---|
|
1 row |
2. endNode()
endNode()
returns the end node of a relationship.
Syntax: endNode(relationship)
Returns:
A Node. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a relationship. |
Considerations:
|
MATCH (x:Developer)-[r]-()
RETURN endNode(r)
endNode(r) |
---|
|
|
2 rows |
3. head()
head()
returns the first element in a list.
Syntax: head(list)
Returns:
The type of the value returned will be that of the first element of |
Arguments:
Name | Description |
---|---|
|
An expression that returns a list. |
Considerations:
|
If the first element in |
MATCH (a)
WHERE a.name = 'Eskil'
RETURN a.array, head(a.array)
The first element in the list is returned.
a.array | head(a.array) |
---|---|
|
|
1 row |
4. id()
id()
returns the id of a relationship or node.
Syntax: id(expression)
Returns:
An Integer. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a node or a relationship. |
Considerations:
|
MATCH (a)
RETURN id(a)
The node id for each of the nodes is returned.
id(a) |
---|
|
|
|
|
|
5 rows |
5. last()
last()
returns the last element in a list.
Syntax: last(expression)
Returns:
The type of the value returned will be that of the last element of |
Arguments:
Name | Description |
---|---|
|
An expression that returns a list. |
Considerations:
|
If the last element in |
MATCH (a)
WHERE a.name = 'Eskil'
RETURN a.array, last(a.array)
The last element in the list is returned.
a.array | last(a.array) |
---|---|
|
|
1 row |
6. length()
length()
returns the length of a path.
Syntax: length(path)
Returns:
An Integer. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a path. |
Considerations:
|
MATCH p =(a)-->(b)-->(c)
WHERE a.name = 'Alice'
RETURN length(p)
The length of the path p
is returned.
length(p) |
---|
|
|
|
3 rows |
7. properties()
properties()
returns a map containing all the properties of a node or relationship.
If the argument is already a map, it is returned unchanged.
Syntax: properties(expression)
Returns:
A Map. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a node, a relationship, or a map. |
Considerations:
|
CREATE (p:Person { name: 'Stefan', city: 'Berlin' })
RETURN properties(p)
properties(p) |
---|
|
1 row, Nodes created: 1 |
8. randomUUID()
randomUUID()
returns a randomly-generated Universally Unique Identifier (UUID), also known as a Globally Unique Identifier (GUID).
This is a 128-bit value with strong guarantees of uniqueness.
Syntax: randomUUID()
Returns:
A String. |
RETURN randomUUID() AS uuid
uuid |
---|
|
1 row |
A randomly-generated UUID is returned.
9. size()
size()
returns the number of elements in a list.
Syntax: size(list)
Returns:
An Integer. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a list. |
Considerations:
|
RETURN size(['Alice', 'Bob'])
size(['Alice', 'Bob']) |
---|
|
1 row |
The number of elements in the list is returned.
10. size() applied to pattern expression
This is the same size()
method as described above, but instead of passing in a list directly, a pattern expression can be provided that can be used in a match query to provide a new set of results.
These results are a list of paths.
The size of the result is calculated, not the length of the expression itself.
Syntax: size(pattern expression)
Arguments:
Name | Description |
---|---|
|
A pattern expression that returns a list. |
MATCH (a)
WHERE a.name = 'Alice'
RETURN size((a)-->()-->()) AS fof
fof |
---|
|
1 row |
The number of paths matching the pattern expression is returned.
11. size() applied to string
size()
returns the number of Unicode characters in a string.
Syntax: size(string)
Returns:
An Integer. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a string value. |
Considerations:
|
MATCH (a)
WHERE size(a.name)> 6
RETURN size(a.name)
size(a.name) |
---|
|
1 row |
The number of characters in the string 'Charlie' is returned.
12. startNode()
startNode()
returns the start node of a relationship.
Syntax: startNode(relationship)
Returns:
A Node. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a relationship. |
Considerations:
|
MATCH (x:Developer)-[r]-()
RETURN startNode(r)
startNode(r) |
---|
|
|
2 rows |
13. timestamp()
timestamp()
returns the difference, measured in milliseconds, between the current time and midnight, January 1, 1970 UTC.
It is the equivalent of datetime().epochMillis
.
Syntax: timestamp()
Returns:
An Integer. |
Considerations:
|
RETURN timestamp()
The time in milliseconds is returned.
timestamp() |
---|
|
1 row |
14. toBoolean()
toBoolean()
converts a string value to a boolean value.
Syntax: toBoolean(expression)
Returns:
A Boolean. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a boolean or string value. |
Considerations:
|
If |
If the parsing fails, |
RETURN toBoolean('TRUE'), toBoolean('not a boolean')
toBoolean('TRUE') | toBoolean('not a boolean') |
---|---|
|
|
1 row |
15. toFloat()
toFloat()
converts an integer or string value to a floating point number.
Syntax: toFloat(expression)
Returns:
A Float. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a numeric or string value. |
Considerations:
|
If |
If the parsing fails, |
RETURN toFloat('11.5'), toFloat('not a number')
toFloat('11.5') | toFloat('not a number') |
---|---|
|
|
1 row |
16. toInteger()
toInteger()
converts a floating point or string value to an integer value.
Syntax: toInteger(expression)
Returns:
An Integer. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a numeric or string value. |
Considerations:
|
If |
If the parsing fails, |
RETURN toInteger('42'), toInteger('not a number')
toInteger('42') | toInteger('not a number') |
---|---|
|
|
1 row |
17. type()
type()
returns the string representation of the relationship type.
Syntax: type(relationship)
Returns:
A String. |
Arguments:
Name | Description |
---|---|
|
An expression that returns a relationship. |
Considerations:
|
MATCH (n)-[r]->()
WHERE n.name = 'Alice'
RETURN type(r)
The relationship type of r
is returned.
type(r) |
---|
|
|
2 rows |
Was this page helpful?