是否可以在像这样的extbase查询中使用CONCAT?
$query = $this->createQuery();
$query
->matching(
$query->logicalOr(
$query->like('street', '%' . $search . '%'),
$query->like('street_number', '%' . $search . '%'),
)
)
->execute();
现在,我想查询CONCAT(街道,'',street_number)。
生成的SQL查询应如下所示:
SELECT * FROM myTable WHERE street LIKE '%abc%' OR street_number LIKE '%abc%' OR CONCAT(street, ' ', street_number) LIKE '%abc%';
答案 0 :(得分:1)
如果您在版本8 LTS以下使用TYPO3,则可以使用statement()进行此类查询。
$query = $this->createQuery();
$query
->statement('SELECT * FROM myTable WHERE street LIKE "%abc%" OR street_number LIKE "%abc%" OR CONCAT(street, " ", street_number) LIKE "%abc%"')
)
->execute();
在TYPO3 8 LTS中,新的Doctrine DBAL也应具备此功能。但是我现在手边没有一个片段。
答案 1 :(得分:1)
使用Doctrine DBAL,您可以从当前getConcatExpression
的{{1}}到表中使用DatabasePlatform
:
Connection