【问题标题】:Spring data query with max limit and condition具有最大限制和条件的 Spring 数据查询
【发布时间】:2016-02-18 12:49:12
【问题描述】:

我想获得年份最高且有特定个人姓名的物品。我正在尝试这个:

Foo findTopByOrderByYearDesc();

这很好,问题是当我添加一个新参数来过滤结果时

Foo findTopByOrderByYearDescAndPersonName(@Param("person.name") final String name);

但我收到此错误:

没有找到类型 Foo 的属性 andPersonName!

我也尝试过,但我得到了同样的错误:

Foo findTopByOrderByYearDescByPersonName(@Param("person.name") final String name);

【问题讨论】:

    标签: java spring spring-data spring-data-jpa


    【解决方案1】:

    您应该使用以下内容:

    Foo findTopByPersonNameOrderByYearDesc(@Param("person.name") final String name);
    

    第一个“by”keyqord 用作分隔符see here

    【讨论】:

    • 在一张大桌子上运行时,这开始变得异常昂贵。我使用select max(t.field) from Table t JPQL 查询手动实现了它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-25
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-17
    • 2018-10-15
    相关资源
    最近更新 更多