2

我刚开始使用乌龟 ORM。并且想知道是否可以按其部分过滤日期时间字段。例如,仅过滤掉日期时间列对应于给定月份的行。与在 Django ORM 中所做的类似,即.filter(datetime_field__month=6)

4

2 回答 2

2

我在我的问题中发布了回复:How to use db functions in Tortoise ORM

对于您的问题,我想您可以使用pypika.CustomFunction,这是一个链接:https ://tortoise-orm.readthedocs.io/en/latest/functions.html#custom-functions

不幸的是,这只是我可以帮助的,使用pypika.functions.Extract也没有帮助我。我的假设是这样做,EXTRACT (MONTH FROM "created_at")但 Tortoise ORM 不允许我将此字段放入filter查询中。

于 2021-02-02T09:50:29.747 回答
1

当您使用 Tortoise ORM 并指定字段为 DatetimeField 时,您可以使用 datetime_field__month 访问其部分,例如月份。

这仅适用于 PostgreSQL 和 MySQL,不适用于 SQLite。

您可以在此处找到可以访问的不同部分:https ://tortoise-orm.readthedocs.io/en/latest/query.html#filtering

于 2021-11-12T15:26:25.643 回答