Skip to content

Loading…

DDC-2177: WHERE IN not working #2869

Closed
doctrinebot opened this Issue · 4 comments

2 participants

@doctrinebot

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

@doctrinebot

Comment created by userfriendly:

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

@doctrinebot

Issue was closed with resolution "Invalid"

@doctrinebot

Comment created by @ocramius:

[~userfriendly] what was it exactly?

@doctrinebot

Comment created by userfriendly:

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

@beberlei beberlei was assigned by doctrinebot
@doctrinebot doctrinebot closed this
@doctrinebot doctrinebot added the Bug label
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.