typo3 – 用于比较同一表中两个字段的Extbase查询

是否可以比较查询API中的两个数据库字段?例如,我想比较字段tstamp和crdate,如:

SELECT * FROM tt_content WHERE tstamp > crdate;

在查询api中我找不到解决方案.获取所有记录并比较循环中的字段不是一种执行方式,因为这可能超过200万条记录(在我的实际情况中).

谢谢你的帮助.

最佳答案 我能想到的唯一方法(以及查询构建器支持)是直接提供语句.它看起来像这样:

$query = $contentElementRepository->createQuery();
$query->statement('SELECT * FROM tt_content WHERE tstamp > crdate');
$matchingContentElements = $query->execute();

这可能会破坏数据库抽象层,因此请谨慎使用.如果您在查询中需要一些用户输入,则statement()有第二个参数,您可以在其中放置参数.

也许有另一种方法可以做到这一点,我不知道,我自己真的很感兴趣.

点赞