【问题标题】:How display sql function in java?如何在java中显示sql函数?
【发布时间】:2025-12-28 13:55:07
【问题描述】:

我有一个计算 SQL 表中重复元素数量的 SQL 函数:

SELECT group_id, COUNT(student_id)
FROM students
GROUP BY student_id
HAVING COUNT(student_id) <= 10

这个函数应该显示学生数量小于或等于 10 的所有组(我相信),我正在尝试使用此代码显示这些组:

public List<String> findGroups() throws IOException, SQLException {
    String createTables = new String(Files.readAllBytes(Path.of("src/main/resources/database/findGroup.sql")));
    Statement statement = connectToEdit().createStatement();
    ResultSet resultSet = statement.executeQuery(createTables);
    List<String> result = new ArrayList<>();
    while(resultSet.next()){
        result.add(resultSet.getString("group_id"));
    }
    return result;
}

但是,它什么也不显示。如何显示包含学生数量的组?

【问题讨论】:

  • 但是你没有打印出任何东西?
  • @Mureinik 即时打印列表,但此列表不包含任何内容

标签: java sql jdbc


【解决方案1】:

我怀疑您的查询,您没有选择非聚合列 (group_id) 和聚合列 student_id

尝试使用 GROUP BY group_id,student_id 进行相同的查询

【讨论】: