DDC-2177: WHERE IN not working #2869

doctrinebot opened this Issue Nov 28, 2012 · 4 comments

2 participants


Jira issue originally created by user userfriendly:

I'm going by the docs, trying to get a WHERE IN type of query working with the query builder.

I've got a flat array of IDs, e.g. something like this:

$IDs = array( 228052, 265635, 344498, 391761, 329203, 317911, 305961, 299939, 249429, 344706 );

I've tried the following ways to get this working:

  • using the Expr class:

    $qb->add( 'where', $qb->expr()->in( 'c.id', ':IDs' ));
    $qb->setParameter( 'IDs', $IDs );

  • alternatively:

    $qb->add( 'where', $qb->expr()->in( 'c.id', $IDs ));

  • even direct DQL:

    $qb->where( 'c.id IN (:IDs)' );
    $qb->setParameter( 'IDs', $IDs );

The generated DQL looks fine:

SELECT c FROM MyEntity c WHERE c.id IN('228052', '265635', '344498', '391761', '329203', '317911', '305961', '299939', '249429', '344706')

But when I call execute() on that query, all these variations give me the following error:

Expected argument of type "Doctrine\ORM\QueryBuilder", "array" given


Comment created by userfriendly:

never mind.... it was something i was doing wrong. :) thank god...


Issue was closed with resolution "Invalid"


Comment created by @ocramius:

[~userfriendly] what was it exactly?


Comment created by userfriendly:

The error was thrown by the Symfony Form Framework, not Doctrine. Sorry about that. :-/

@beberlei beberlei was assigned by doctrinebot Dec 6, 2015
@doctrinebot doctrinebot closed this Dec 6, 2015
@doctrinebot doctrinebot added the Bug label Dec 7, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment