Kohana ORM:如何查询基于数据库中的字段计算的时间戳
Posted
技术标签:
【中文标题】Kohana ORM:如何查询基于数据库中的字段计算的时间戳【英文标题】:Kohana ORM: How to query for a timestamp that's calculated based on a field in the DB 【发布时间】:2012-05-06 11:51:44 【问题描述】:简单表格:
start_date TIMESTAMP
duration_days INT
英文:我只想要没有经过duration
句点的行。
在 SQL 中:
SELECT * FROM MyTable WHERE now() < TIMESTAMPADD(DAY, duration_days, start_date);
如何在 Kohana/ORM 中执行此操作?对于我需要检索的许多行中的每一行,持续时间都不同。
【问题讨论】:
【参考方案1】:只需使用where()
子句:
ORM::factory('MyTable')->where(DB::expr('now()'), '<', DB::expr('TIMESTAMPADD(DAY, duration_days, start_date)'))->find_all();
【讨论】:
以上是关于Kohana ORM:如何查询基于数据库中的字段计算的时间戳的主要内容,如果未能解决你的问题,请参考以下文章
Kohana 3.2 中使用 ORM 模型(结果)的字段的自定义过滤器