如何从结果集中打印值而列中没有任何重复的记录

时间:2019-04-10 07:53:24

标签: mysql sql database jsp resultset

我已经创建了代码。请检查评论中的链接。我正在尝试编写代码,该代码为特定列而不是所有列提供唯一记录。还尝试了[while(rs.next())]。但它会打印所有具有重复列值的记录。我要打印的表格对于特定的两列是唯一的,其他列中包含重复的值。请选择下面提供的图像,这样您就会确切知道我要查找的内容。enter image description here

现在在这里您可以看到左侧表包含从结果集中提取的列的所有重复值。但我想要所有记录,但不要为前两列重复值。

1 个答案:

答案 0 :(得分:1)

您要使用SQL还是Java?在Java中,您可以做到这一点(我将为一个值进行操作,为其他值进行处理):

    String lastUsername;
    while (rs.next()) {
       String username = rs.getString("username");
       if (username.equals(lastUsername)) username = "";
       else lastUsername = username;

       // print username or whatever you need to do with it
    }

您还应该确保数据集实际上是按某种顺序排列的,至少是要替换的列:

SELECT DISTINCT username, empid, leavetype,remainingleave,requiredleave,STATUS 
  FROM request 
 ORDER BY username, empid