J'ai un tableau d'ID de produits. Je dois faire requête comme ceci:Symfony2 doctrine mysql IN requête
SELECT * FROM products WHERE pid IN (1, 2, 8, 4, ...) // etc
J'ai mes ids à variables PIDs $.
$qb = $em->createQueryBuilder();
$query = $qb->select('p.pid')
->from('SRC\MainBundle\Entity\Product', 'p')
->where('p.name IN :pids') // error is HERE
->setParameter('pids', $pids)
->getQuery();
Ne fonctionne pas. Je reçois une erreur:
[Syntax Error] line 0, col 66: Error: Expected Doctrine\ORM\Query\Lexer::T_OPEN_PARENTHESIS, got ':pids'
Que signifie « ne fonctionne pas » signifie réellement? Quel est votre problème? –
En cas d'erreur: "[Erreur de syntaxe] ligne 0, col 66: Erreur: Doctrine attendue \ ORM \ Query \ Lexer :: T_OPEN_PARENTHESIS, got ': pids'" – twoface88
Que se passe-t-il si vous retournez: pids entre parenthèses comme l'erreur dit? –