mysql函数的本机查询或DoctrineExtensions

时间:2019-05-23 13:46:30

标签: doctrine typo3 categories query-builder typo3-9.x

通常,我想将查询生成器扩展到MySql函数或发送nativie查询。

我想从sys_category_record_mm表中获取具有几个类别的所有记录。 为此,我需要mysql函数GROUP_CONCAT。

QueryBuilder不支持此功能。 但是可以扩展Doctrine并包含mySQL功能,例如DoctrineExtensions https://github.com/beberlei/DoctrineExtensions

在symfony中,有一个yaml文件来添加新功能。有没有办法在TYPO3中注册? https://symfony.com/doc/current/doctrine/custom_dql_functions.html

在Doctrine 3中,可以编写本机查询。 https://www.doctrine-project.org/projects/doctrine-orm/en/latest/reference/native-sql.html

是否可以在TYPO3中使用本机查询?

SELECT * FROM (
SELECT uid_foreign, tablenames, GROUP_CONCAT(uid_local) as categories
    FROM sys_category_record_mm
    GROUP BY uid_foreign, tablenames) cat
WHERE find_in_set('2', cat.categories) 
AND (find_in_set('10', cat.categories) OR  find_in_set('5', cat.categories))

或者还有另一种解决方案来检索带有强制sys_category和一组可选sys_categories的记录吗?

0 个答案:

没有答案