Hi everyone,

I am using JDBI when quering my H2 database,
and I am trying to run a query that looks up records filtered by a list of 
statuses (for example: 'OPEN', 'CLOSE'...) 

@RegisterMapper(MyDocsMapper.class)
@SqlQuery(  "select " +
            "  * " +
            "from " +
            "  my_table " +
            "where " +
            "  status in (:statusList)")
public abstract List<MyDocs> fetchByStatusList(@Bind("statusList") String[] 
statusList);

Running the above only works if the input statusList contains only one 
status (list length equals 1).
When I provide a list of many statuses, it does not work !?!

On the other hand, If I hard code the SQL as follows, then the query works:

@RegisterMapper(MyDocsMapper.class)
@SqlQuery(  "select " +
            "  * " +
            "from " +
            "  my_table " +
            "where " +
            "  status in ('OPEN','CLOSE')")
public abstract List<MyDocs> fetchByStatusList(@Bind("statusList") String[] 
statusList);

What am I doing wrong?
Do I need to @Bind the String[] in a different way?

Thanks,
Amit

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to h2-database+unsubscr...@googlegroups.com.
To post to this group, send email to h2-database@googlegroups.com.
Visit this group at https://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to