通常,我想将查询生成器扩展到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的记录吗?