gpt4 book ai didi

java - 如何在 hibernate 中获取排序结果中的第一组结果?

转载 作者:行者123 更新时间:2023-12-01 19:53:36 24 4
gpt4 key购买 nike

我有以下作者实体。我想打印第一组(作者按年龄降序分组)。

例如,

作者

id name age

1 JK 20

2 NRN 25

3 APJ 35

4 RK 20

5 NRN 25

6 JK 20

7 RK 20

排序(ASC)后将是:

1  JK  20

4 RK 20

6 JK 20

7 RK 20

2 NRN 25

3 APJ 35

5 NRN 25

我想要第一组分组作为结果,即

1  JK  20

4 RK 20

6 JK 20

7 RK 20

我尝试使用以下查询,但它返回所有结果。

String hql = "FROM Author A ORDER BY A.age ASC";
Query query = session.createQuery(hql);
List results = query.list();

请让我知道查询中可以修改哪些内容。

@Entity
public class Author {

@Id
private int id;

private String name;

private int age;

public Author() {
}

public Author(int id, String name, int age) {
super();
this.setId(id);
this.setName(name);
this.setAge(age);
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

@Override
public String toString() {
return "Author [id=" + id + ", name=" + name + ", age=" + age + "]";
}

}

谢谢。

最佳答案

一旦尝试此代码,它可能会有所帮助

 List<Author> ages = session
.createNativeQuery("SELECT * FROM Author a WHERE a.age = (SELECT min(a.age) FROM Author a)")
.addEntity(Author.class).getResultList();

关于java - 如何在 hibernate 中获取排序结果中的第一组结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50390034/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com