我找到了 < a href=> "https://github.com/beberlei/DoctrineExtensions" rel="nofollow" >DoctrineExtensions 模块,该模块已经执行了一些有用的 MySQL 函数。 但我认为我的问题是一个一般性的问题。 您如何将另一个 Mysql 表达式作为参数传递到函数中?
如果我有2个栏 updated_at
,这是一个 DATETIME
和 lifespan
,这是一个 INT
,我想问一实体的寿命是否已经过期,我可以这样做;
WHERE 0 > TIMESTAMPDIFF(SECONDS, NOW(), e.updated_at + INTERVAL e.lifespan SECOND)
在Query Builder 这样的。
$qb->andWhere( 0 > TIMESTAMPDIFF(SECONDS, CURRENT_TIMESTAMP(), e.updated_at + INTERVAL e.lifespan SECOND) );
但剖析器不喜欢interval e. lifespan second
, 因为它期望有近亲括号而不是加号。