запрос groupBy с клиентом noedjs ravendb - PullRequest
3 голосов
/ 10 апреля 2019

Я пытаюсь выполнить groupBy запрос на ravendb, используя nodejs-ravendb-client !

const apmts = await session.query<Appointment>({ collection: "Appointments" }) .statistics(s => (stats = s)) .groupBy("client.name").all();

сталкивается с этой ошибкой при компиляции машинописи Property 'all' does not exist on type 'IGroupByDocumentQuery<Appointment>'.ts(2339)

Любая помощь здесь?

1 Ответ

4 голосов
/ 10 апреля 2019

Метод запроса документа groupBy() возвращает объект типа IGroupByDocumentQuery Как видите, у него нет all() метода.

Вы можете использовать selectKey(), selectCount() или selectSum() для агрегирования, а затем связать его с помощью all(). E.g.:

const { GroupByField } = require("ravendb");

const orders = await session.query({ collection: "Orders" })
    .groupBy("ShipTo.Country")
    .selectKey("ShipTo.Country", "Country")
    .selectSum(new GroupByField("Lines[].Quantity", "OrderedQuantity"))
    .all();

Для получения более подробной информации и примеров, пожалуйста, обратитесь к официальной документации :

...