簡體   English   中英

Doctrine2 DQL,其中id在數組中

[英]Doctrine2 DQL where id in array

我有一個用戶,我想檢查它是否在qstn用戶關系中。 我嘗試執行以下DQL:

SELECT exmpl, qstn
    FROM Foo\BarBundle\Entity\Examples exmpl
    LEFT JOIN exmpl.question qstn
    LEFT JOIN qstn.users u
    WHERE :user IN (qstn.users)

但是給了我一個錯誤:

[Syntax Error] line 0, col 391: Error: Expected Literal, got 'qstn'

這有可能嗎? 如果否,是否有解決方法(教條方式),而不是令人討厭? (如果沒有通過用戶,我可以解決)。

除此以外: https : //stackoverflow.com/a/22230515/2535171

您只需要再加入一個

SELECT exmpl, qstn
FROM Foo\BarBundle\Entity\Examples exmpl
LEFT JOIN exmpl.question qstn
LEFT JOIN qstn.users u
WHERE u.id = :userID

看來您可以使用DQL關鍵字“ MEMBER OF”,例如:

SELECT exmpl, qstn
   FROM Foo\BarBundle\Entity\Examples exmpl
   LEFT JOIN exmpl.question qstn
   LEFT JOIN qstn.users u
   WHERE :user MEMBER OF qstn.users

我希望這可以幫助別人!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM