谁能帮我把这个 SQL 翻译成 Doctrine 2 DQL
据我了解:
尽管文档说了什么,Doctrine 不支持 FROM 子句中的子查询
但一定有办法...
SELECT * FROM
(
SELECT m.*,qf, y.name as annee
FROM pbs_members m
LEFT JOIN pbs_qf qf ON m.id = qf.member_id
LEFT JOIN pbs_years y ON qf.year_id=y.id
ORDER BY y.name DESC
) AS m_temp
GROUP BY id
编辑:
我有 3 张桌子:
pbs_members (id, member_type_id, uid, address, birth_date, email)
pbs_qf (id, member_id, year_id, qf)
pbs_years (id, name)
我想要的是:所有拥有当年 QF 的用户,如果没有为当年定义 QF,则减少年份直到找到 QF,如果没有找到 QF,则返回 null/没有找到 QF