我不知道这是否是特定于 Google App Engine for Java 的问题,但如果设置为keywords
参数的值是空字符串,则查询不会返回任何内容,即使minPrice
设置了 a 也是如此。
minPrice
即使keywords
值为空,如何更改此查询以使其返回满足条件的记录?理想情况下,我会以某种方式对这两个条件使用相同的查询,而无需基于空字符串条件创建单独的查询。
Query qry = entityManager.createQuery("SELECT p FROM Test p
WHERE keywords = :keywords and price >= :minPrice");
qry.setParameter("keywords", keywords);
qry.setParameter("minPrice", Integer.parseInt(minPrice));