当某些属性包含数组时排序

order by when some properties contain arrays

我有一个数据库,其中相同类型的节点,比方说人,可能具有给定 属性 的单个字符串值或字符串值数组。我希望能够进行搜索,然后通过 属性 对结果进行排序。尝试时我收到以下错误:

KernelException: Don't know how to compare that. Left: ["D'Amico","Damico"] (String[]); Right: "Brindley" (String)

关于如何实现这一点有什么想法吗?

如果您可以尝试按第一个数组元素排序。

MATCH (n)
RETURN n
ORDER BY coalesce(head(n.foo), n.foo)

head(coll) returns null 如果没有集合,那么你就正常使用属性。