如何选择每个唯一值中的一个?

问题描述:

我如何才能获得我正在搜索的每个值中的1个?这是我迄今为止...如何选择每个唯一值中的一个?

public String getRevisionsLog(String revName) { 
    try { 
     String txt = "\t\t\t\t\t\t\t#e---===Revision Logs===---#n\r\n"; 
     Connection con = DatabaseConnection.getConnection(); 
     PreparedStatement ps = con.prepareStatement("SELECT revision FROM revisions_log WHERE revisionName = ? ORDER BY REVISION"); 
     ps.setString(1, revName); 
     ResultSet rs = ps.executeQuery(); 
     while (rs.next()) { 
      txt += rs.getString("revision") + "\r\n"; 
     } 
     ps.close(); 
     rs.close(); 
     return txt; 
    } catch (Exception e) { 

    } 
    return "No logs were found!"; 
} 

所以在我的数据库到目前为止,我有有1和1.1修订值值的行。我想检索这些版本号,但每次只能检索一次。如果我有发言权......

1, 1, 1, 1.1, 1.1, 1.1 

我只想找回1和1.1,而不是所有的1

使用DISTINCT关键字的实例:

PreparedStatement ps = con.prepareStatement("SELECT DISTINCT revision FROM revisions_log WHERE revisionName = ? ORDER BY REVISION"); 
+0

嘿!非常感谢!顺便说一句,是否有一个原因,当我输入1.0到数据库中,即使我将该列指定为浮点数,它会回到1?我如何使它显示为1.0? –

+0

该字段是数据库级别的浮点数?尝试使用:rs.getFloat而不是你的rs.getString(不保证:我没有测试它:))。否则,您可能必须先使用ROUND格式化数据(修订版本1),然后再取回数据。 –

+0

谢谢!有效! –