Group By¶
GROUP BY
is similar with SQL. It can only be applied in the YIELD
syntax.
Name | Description |
---|---|
AVG() | Return the average value of the argument |
COUNT() | Return the number of records |
COUNT_DISTINCT()) | Return the number of different values |
MAX() | Return the maximum value |
MIN() | Return the minimum value |
STD() | Return the population standard deviation |
SUM() | Return the sum |
BIT_AND() | Bitwise AND |
BIT_OR() | Bitwise OR |
BIT_XOR() | Bitwise exclusive OR (XOR) |
All the functions above only work with int64 and double.
Example¶
nebula> GO FROM 100 OVER follow YIELD $$.player.name as Name | GROUP BY $-.Name YIELD $-.Name, COUNT(*);
-- Find all the players followed by vertex 100 and return their names as Name. These players are grouped by Name and the number in each group is counted.
-- The following result is returned:
================================
| $-.Name | COUNT(*) |
================================
| Kyle Anderson | 1 |
--------------------------------
| Tony Parker | 1 |
--------------------------------
| LaMarcus Aldridge | 1 |
--------------------------------
nebula> GO FROM 101 OVER follow YIELD follow._src AS player, follow.degree AS degree | GROUP BY $-.player YIELD SUM($-.degree);
-- Find all the players followed by vertex 101, return these players as player and the property of the follow edge as degree. These players are grouped and the sum of their degree values is returned.
-- The following result is returned:
==================
| SUM($-.degree) |
==================
| 186 |
------------------