apoc.coll.sortMulti
语法 |
|
||
描述 |
按给定字段对给定的 |
||
参数 |
名称 |
类型 |
描述 |
|
|
要排序的映射列表。 |
|
|
|
用于排序映射列表的属性键。默认为: |
|
|
|
要返回的结果数量。默认为: |
|
|
|
要跳过的数量。默认为: |
|
返回 |
|
||
使用示例
以下示例使用 APOC 和 Cypher 按 name 属性升序对映射列表进行排序
WITH [
{name:'graphs'},
{name:'are',age:32},
{name:'everywhere',age:42}
] AS list
RETURN apoc.coll.sortMulti(list, ['^name']) as output
WITH [
{name:'graphs'},
{name:'are',age:32},
{name:'everywhere',age:42}
] AS list
RETURN COLLECT {
UNWIND list AS x
RETURN x ORDER BY x.name
} AS output
| 输出 |
|---|
[{name: "are", age: 32}, {name: "everywhere", age: 42}, {name: "graphs"}] |
以下示例使用 APOC 和 Cypher 按 name 属性升序,然后按 age 属性降序对映射列表进行排序
WITH [
{name:'graphs'},
{name:'are',age:32},
{name:'are',age:21},
{name:'everywhere'}
] AS list
RETURN apoc.coll.sortMulti(list, ['^name', 'age']) as output
WITH [
{name:'graphs'},
{name:'are',age:32},
{name:'are',age:21},
{name:'everywhere'}
] AS list
RETURN COLLECT {
UNWIND list AS x
RETURN x ORDER BY x.name ASC, x.age DESC
} AS output
| 输出 |
|---|
[{name: "are", age: 32}, {name: "are", age: 21}, {name: "everywhere"}, {name: "graphs"}] |
以下示例使用 APOC 和 Cypher 按 name 属性升序对映射列表进行排序并仅返回一个值
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN apoc.coll.sortMulti(list, ['^name'], 1) as output
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN COLLECT {
UNWIND list AS x
RETURN x ORDER BY x.name LIMIT 1
} AS output
| 输出 |
|---|
[{name: "are"}] |
以下示例使用 APOC 和 Cypher 按 name 属性升序对映射列表进行排序并跳过第一个值
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN apoc.coll.sortMulti(list, ['^name'], -1, 1) as output
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN COLLECT {
UNWIND list AS x
RETURN x ORDER BY x.name SKIP 1
} AS output
| 输出 |
|---|
[{name: "everywhere"}, {name: "graphs"}] |
以下示例使用 APOC 和 Cypher 按 name 属性升序对映射列表进行排序,跳过第一个值并仅返回一个值
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN apoc.coll.sortMulti(list, ['^name'], 1, 1) as output
WITH [
{name:'graphs'},
{name:'are'},
{name:'everywhere'}
] AS list
RETURN COLLECT {
UNWIND list AS x
RETURN x ORDER BY x.name SKIP 1 LIMIT 1
} AS output
| 输出 |
|---|
[{name: "everywhere"}] |