【问题标题】:Contains query Spring data包含查询 Spring 数据
【发布时间】:2018-03-26 23:23:03
【问题描述】:

我想在 spring 数据中使用 LIKE 运算符,但下面的查询没有任何反应:

  @query("select a.designation from article a,stock s where (a.idArticle=s.article.idArticle and (a.designation LIKE %:x%") 
             public page<Stock> listArticles(@param("x") String designation);

我知道我可以使用findByDesignationContaining,但是我必须在这里使用查询,因为我必须连接两个表。

你有什么建议吗?

【问题讨论】:

    标签: spring-data


    【解决方案1】:

    你应该使用concatJPQL函数:

    ...(a.designation LIKE concat('%', :x, '%'))
    

    如果您需要不区分大小写的 'like',您可以使用 'upper'/'lower' 函数:

    ...(upper(a.designation) LIKE concat('%', upper(:x), '%'))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-30
      • 2020-11-30
      相关资源
      最近更新 更多