size()関数の使用方法
size関数を使用すると、複合項目(レコード、配列またはマップ)のサイズ(フィールドまたはエントリの数)を戻すことができます。次に例を示します。
各個人のIDと、持っている電話の数を戻すには、次のようにします。
sql-> SELECT id, size(p.address.phones)
AS registeredphones FROM Persons p;
+----+------------------+
| id | registeredphones |
+----+------------------+
| 5 | 3 |
| 3 | 2 |
| 4 | 4 |
| 2 | 1 |
| 1 | 1 |
+----+------------------+
5 rows returned
各個人のIDと、持っているexpensesカテゴリの数を戻すには、次のようにします。
sql-> SELECT id, size(p.expenses) AS
categories FROM Persons p;
+----+------------+
| id | categories |
+----+------------+
| 4 | 4 |
| 3 | 3 |
| 2 | 3 |
| 1 | 2 |
| 5 | 3 |
+----+------------+
5 rows returned
各個人のIDと、支出が2000を超えているexpensesカテゴリの数を戻すには、次のようにします。
sql-> SELECT id, size([p.expenses.values($value > 2000)]) AS
expensiveCategories FROM Persons p;
+----+---------------------+
| id | expensiveCategories |
+----+---------------------+
| 3 | 0 |
| 2 | 1 |
| 5 | 0 |
| 1 | 0 |
| 4 | 1 |
+----+---------------------+
5 rows returned