spring neo4j:如何通过索引字段不区分大小写来搜索数据?

时间:2013-12-20 10:07:37

标签: java indexing neo4j cypher spring-data-neo4j

域类如下:

@NodeEntity
public class Product{

   private Long nodeId;
   @Indexed(indexName = "productCode")
   private String code;
   ...
}

存储库类:

 public interface ProductRepository extends GraphRepository<Product>{       
       @Query(value="start product=node:productCode(code={0}) return product")
        public Set<Product> findProducts(String code);
    }

如何使代码查找不区分大小写? 我尝试正则表达式并失败。编码如下:

 public interface ProductRepository extends GraphRepository<Product>{

       @Query(value="start product=node:productCode(code=~{0}) return product")
        public Set<Product> findProducts(String code);
    }

我知道一种方法有效,但性能不佳,代码如下:

 public interface ProductRepository extends GraphRepository<Product>{
       @Query(value="start product=node:__types__(className='Product') where product.code='~{0}' return product")
                public Set<Product> findProducts(String code);
            }

1 个答案:

答案 0 :(得分:0)

一种方法是尝试使用带有正则表达式的where子句:

请参阅latest 2.0 milestonehere for 1.9.5