title: Spring Data JPQL query: lower case for List param
body: <p>I use Spring Data REST in my project and I have a @Query tag, as such: </p>
  
  <pre><code>@Query("from Customer c where lower(c.customerId) = lower(:customerId) and lower(c.department.businessUnit.name) = lower(:businessUnit)") 
  List&lt;Customer&gt; findByCustomerIdAndBusinessUnit(@Param('customerId') String customerId, @Param('businessUnit') String businessUnit)
  </code></pre>
  
  <p>This works perfectly fine. But, I am not sure how to convert to lowercase when a List is passed in, such as: </p>
  
  <pre><code>@Query("SELECT c FROM Customer c WHERE LOWER(c.customerId) IN LOWER(:customerIds)")
  Page&lt;Customer&gt; findByCustomerIdIn(@Param("customerIds") List&lt;String&gt; customerIds, Pageable pageable)
  </code></pre>
  
  <p>That gives me the following error: </p>
  
  <pre><code>Caused by: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: ( near line 1, column 94 [SELECT c FROM com.myapp.Customer c WHERE LOWER(c.customerId) IN LOWER(:customerIds)]
  </code></pre>
  
  <p>I understand this happening because Spring Data REST cannot cast a whole list of Strings to lower case (that is not possible in straight up TSQL / PLSQL either!). So, are my options limited to implementing my own repository and build a controller on top of it...? Any better ideas? :)</p>