Я пытаюсь выбрать всех родителей по количеству их детей.
У меня следующий запрос:
SELECT
a.*,
(SELECT COUNT(*) FROM demo b WHERE b.parent = a.name) as count
FROM demo a
WHERE
meta(a).id LIKE "xyz:%"
AND a.parent IS MISSING
ORDER BY a.createdAt DESC LIMIT 50 OFFSET 0
Мои документы выглядят примерно так:
xyz: 1
{
id: 1,
name: "parent",
createdAt: 1234
}
xyz: 2
{
id: 2,
name: "child",
parent: "parent",
createdAt: 5678
}
Я получаю следующую ошибку:
Ошибка оценки проекции.- причина: FROM в коррелированном подзапросе должен содержать предложение USE KEYS: FROM demo.
Код ошибки: 5010
UPDATE: Кажется, что работает следующий запрос:
SELECT
a.*,
(SELECT COUNT(id) as count FROM demo b WHERE b.parent = "parent")[0].count as count
FROM demo a
WHERE
meta(a).id LIKE "xyz:%"
AND a.parent IS MISSING
ORDER BY a.createdAt DESC LIMIT 50 OFFSET 0
, но если я заменю "parent"
на a.name
, это выдаст ту же ошибку.