我正在尝试使用教义查询构建器构建一个查询,该查询构建器连接一个不相关的表,如下所示:
$query = $this->createQueryBuilder('gpr')
->select('gpr, p')
->innerJoin('TPost', 'p')
->where('gpr.contentId = p.contentId')
但这不起作用。我仍然收到一个错误:
错误:连接路径表达式中使用了标识变量 TPost,但之前未定义。
我搜索了此错误消息,每个人都回答使用表别名 + 属性,如 p.someAttribute。但是我要加入的表与我开始选择的表无关。
作为一个普通的mysql查询,我会这样写:
SELECT * FROM t_group_publication_rel gpr
INNER JOIN t_post p
WHERE gpr.content_id = p.content_id
任何想法我做错了什么?