我想在MongoDB中按年份过滤数据。如果我传递了2022年,那么只显示2022年的数据,而当我传递了2023年,则只显示2023年的数据。我不知道如何过滤。我使用了$gte
和$lte
标签,但它返回空。还让我知道我将按特定年份和月份过滤谁。假设是2023年和11月。数据-
{
_id: new ObjectId("63ac23187dc7d"),
details: 'hii there i am feeling great today',
status: '1',
createdAt: 2021-11-28T11:06:00.736Z
},
{
_id: new ObjectId("63ac23b357dc96"),
details: 'hi i am feeling good today',
status: '1',
createdAt: 2022-12-28T11:08:40.400Z,
},
{
_id: new ObjectId("63b2b2afa0d8e"),
details: 'Hello!! This is Ankit and feeling good',
status: '1',
createdAt: 2022-11-14T10:31:36.098Z
},
{
_id: new ObjectId("63b2b2sswa0d91"),
details: 'Felling bad a bit',
status: '1',
createdAt: 2023-01-02T10:32:27.149Z
},
{
_id: new ObjectId("63b2b2a0d94"),
details: 'Hmm, its ok ok',
status: '1',
createdAt: 2023-01-02T10:33:19.386Z
}
2条答案
按热度按时间ldioqlga1#
如果您正在寻找一种通用的方法来筛选不一定连续的特定年份和月份,一个选项是:
了解它在playground example上的工作原理
6pp0gazn2#
假设
createdaAt
是您要筛选的数据,并且它是一个真实的日期,那么对于一个年份,您可以编写如下查询:对于一个月,它是: