[DDC-2177] WHERE IN not working Created: 28/Nov/12 Updated: 29/Nov/12 Resolved: 28/Nov/12 |
|
| Status: | Closed |
| Project: | Doctrine 2 - ORM |
| Component/s: | ORM |
| Affects Version/s: | 2.3 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major |
| Reporter: | Moritz Kraft | Assignee: | Benjamin Eberlei |
| Resolution: | Invalid | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Linux, Symfony 2, PHP 5.3.10 |
||
| Description |
|
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:
$qb->add( 'where', $qb->expr()->in( 'c.id', ':IDs' ));
$qb->add( 'where', $qb->expr()->in( 'c.id', $IDs ));
$qb->where( 'c.id IN (: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 |
| Comments |
| Comment by Moritz Kraft [ 28/Nov/12 ] |
|
never mind.... it was something i was doing wrong. |
| Comment by Marco Pivetta [ 28/Nov/12 ] |
|
Moritz Kraft what was it exactly? |
| Comment by Moritz Kraft [ 29/Nov/12 ] |
|
The error was thrown by the Symfony Form Framework, not Doctrine. Sorry about that. :-/ |