Posso usar a palavra-chave “ON” no DQL ou preciso usar a Consulta Nativa?

Tenho um relacionamento oneToMany entre o Post e o PostVote. Gostaria de recuperar uma postagem e como um usuário específico votou nela. No DQL, gostaria de recuperar a entidade Post e PostVote relacionada, mas apenas uma em que user_id é por exemplo 5.

Eu não consigo usar a palavra-chave sql ON assim:

->createQuery('SELECT p, pv FROM Post p LEFT JOIN p.postvotes ON pv.user = :userid WHERE p.id = :postid')

E se eu usar WHERE para filtrar os resultados, ele criará um problema e não exibirá um resultado, a menos que exista pelo menos um objeto pós-votação:

->createQuery('SELECT p, pv FROM Post p LEFT JOIN p.postvotes WHERE p.id = :postid' AND pv.user = :userid)

A consulta nativa é a única maneira de conseguir isso?

questionAnswers(1)

yourAnswerToTheQuestion