Couchbase N1QL 想要 return 项并计数

Couchbase N1QL want to return items and count

想弄清楚如何让我的沙发底座 return 成为一个像这样的物体:

{
  items: [],
  totalItemsCount: T<number>,
}

我的 select 格式如下:

SELECT  a.*, (  SELECT COUNT(*) FROM table b WHERE b.environment = "test" AND b.DocType = "GM360.User") as Count 
FROM table a WHERE a.environment = "test" 
AND a.DocType = "Moderator.User" 
limit 5 offset (5 * (1 -1) )

结果如下:

[
  { Accounts: [], UserId: 1,  Count: 199 },
  { Accounts: [], UserId:, 2, Count: 199 },
]

以下查询给出了您期望的结果对象。如果那还不把问题说清楚

SELECT (SELECT RAW a
        FROM table AS a
        WHERE a.environment = "test" AND a.DocType = "Moderator.User") AS items,
       (SELECT RAW COUNT(1)
        FROM table b
        WHERE b.environment = "test" AND b.DocType = "GM360.User")[0] AS totalItemsCount;

SELECT SUM(CASE WHEN a.DocType = "GM360.User" THEN 1 ELSE 0 END) AS totalItemsCount,
       ARRAY_AGG(CASE WHEN a.DocType = "Moderator.User" THEN a ELSE MISSING END) AS items
FROM table AS a
WHERE a.environment = "test" AND a.DocType IN ["Moderator.User", "GM360.User"];