我正在尝试按有时出现但有时不出现的字段排序。示例数据:
[
{ Name: Jeff, RegisteredUser: true },
{ Name: Jane },
{ Name: Jill, RegisteredUser: true },
]
我的查询如下:
SELECT a.*
FROM table a
WHERE AND a.DocType = "User"
ORDER BY Lower(a.RegisteredUser) ASC
但是,当我使用上面的查询时,它根本无法正确排序(基本上什么也不做)。
答案 0 :(得分:1)
它可以订购。请注意,“ MISSING上的LOWER”为“ MISSING”,并且放在第一位, 非字符串值的LOWER为NULL(因为LOWER只能在字符串上完成),该值放在MISSING之后。可以将重复值放在任何重复的位置,以免提供更多的ORDER BY表达式。结帐https://docs.couchbase.com/server/current/n1ql/n1ql-language-reference/orderby.html
您可以删除LOWER,因为布尔字段不需要更低的值。
SELECT a.*
FROM table a
WHERE AND a.DocType = "User"
ORDER BY a.RegisteredUser ASC;