Thanks for the reply. I'm actually using JDO so I create a Query and
apply .setFilter() to it. The property I have is an int[] array, not a
List, but I could change this if it means I can query the contents of
the List.

Importantly, I need the query to be as efficient as possible as I'm
currently looping through the Array once the Entity is loaded which I
assume is not very efficient.

So what would be the best way to store 30 integers (Array or List) and
how would you filter on it in a query using JDO? I wish to check for
Entities which contain a single integer or multiple I.e. 2 or 2,3 and
4.

I've tried looking through the JDO docs but I'm obviously missing
something :(

Thanks

On May 9, 7:57 am, Nichole <[email protected]> wrote:
> You can use "contains" in JDO instead of SQL's IN(), but the
> implementation is a separate query for each item in the list.
> (http://code.google.com/appengine/docs/java/datastore/jdo/
> queries.html).
> There's also a limit of 30 to the number of items in the array.
>
> This from appengine tests is expected to work:
>
> Query q = pm.newQuery("select from " + Flight.class.getName() + "
> where :ids.contains(id)");
> List<Flight> flights = (List<Flight>) q.execute( Arrays.asList(key,
> e1.getKey(), e2.getKey()) );
>
> On May 8, 5:14 pm, mscwd01 <[email protected]> wrote:
>
>
>
>
>
>
>
> > Hey
>
> > I have an entity with an Int Array and I would like to perform a query
> > on the contents of the Array. For example, I would like to return
> > entities which have a certain number within the array, I.e.
>
> > Select * From MyObject Where numberArray contains 2
>
> > Is this possible in any way, shape or form?
>
> > Thanks

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to