在我的集合中,我有一些文档,它们的值之一是created_on
键,在创建文档时用时间戳填充。
我想检索两个日期之间创建的文档,但我不能得到它在一个简单的方式,我有下一个:
FOR d IN mycollection
FILTER '2021-12-01' <= DATE_FORMAT(d.created_on, "%yyyy-%mm-%dd") <= '2021-12-05'
SORT d.created_on ASC
RETURN DATE_FORMAT(d.created_on, "%yyyy-%mm-%dd")
但上面的查询将返回所有记录,而不仅仅是指定时间段内的文档。
有什么建议吗?提前感谢!
1条答案
按热度按时间qjp7pelc1#
问题是你的过滤器表达式
'2021-12-01' <= DATE_FORMAT(d.created_on, "%yyyy-%mm-%dd") <= '2021-12-05'
基本上和x
是一个布尔值,因此总是比字符串小。您应该将查询重写如下:
这应该可以正确过滤,但是你不能为FILTER使用
created_an
上的任何索引,只能为SORT使用。因此,最好将查询编写为: