Как получить первое и последнее значение даты с помощью pymongo - PullRequest
1 голос
/ 13 марта 2019

Я хотел бы получить первую и последнюю дату при выполнении сортировки для последней записи в pymongo.

Например, ниже приведен мой запрос: set1 = db.set1.aggregate ([{'$ sort': {'date': - 1}}, {"$ limit": 6}])

Что дает мне следующий вывод.Я знаю, что могу сделать -1 и положительное 1, чтобы получить первую и последнюю дату и сохранить ее в переменной, но есть ли лучший способ сделать это.

ВЫХОД

'2014-05-15', '2014-05-16', '2014-05-17', '2014-05-18', '2014-05-19', '2014-05-20'

Iпросто хочу первое и последнее значение даты и ничего между ними.

1 Ответ

1 голос
/ 13 марта 2019

Просто используйте операторы агрегации $first и $last:

    db.set1.aggregate([
        {'$sort': {'date': 1}},
        {'$group': {'_id': None, 'first': {'$first': '$date'}, 'last': {'$last': '$date'}}}
    ])
...