我试图将SQL函数转换为DQL函数。
我不知道如何执行以下步骤:
这是我实际工作的SQL代码。
SELECT ut.token
FROM user_token ut
INNER JOIN factory f ON f.id = ut.factory_id
INNER JOIN article_factory af ON af.factory_id = f.id
INNER JOIN article a ON a.id = af.article_id
WHERE ut.factory_id = (
SELECT f.id
FROM factory f
INNER JOIN article_factory af ON af.factory_id = f.id
INNER JOIN article a ON a.id = af.article_id
WHERE a.id = :article
)
GROUP BY ut.token
如果是,这里是我的表格关系的屏幕。
article_factory 不是实体或类。当我指定了ManyToMany关系时,为文章和工厂之间的关系创建了 article_factory 。
编辑:尝试通过简单的SQL,但是在文章和死亡之间建立链接的问题,因为DQL只知道实体,而且Doctrine正在创建一个我无法使用的表。使用DQL,我仍然遇到与上述相同的问题,我不知道如何正确加入我的课程,并进行子选择。