找到varchar的最大值

时间:2012-01-19 06:34:12

标签: java sql jdbc

嗨,我正在开发一个java项目,我必须检索最后一个添加了id的客户,即Max(c_id)。但在我的数据库中c_id采用文本(varchar)格式,那么如何检索最大值?

    Connection conn;
    Statement st;
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    conn=DriverManager.getConnection("jdbc:odbc:rrr");
    st=conn.createStatement();

 String query[] ={"SELECT Max(cid) FROM client"};
  for(String q : query){
     ResultSet rs = st.executeQuery(q);        
     while (rs.next()) {
        String name = rs.getString("cid");
        Text1.setText(name);

7 个答案:

答案 0 :(得分:3)

select max(convert(integer, c_id))select max(cast(c_id as integer))应该有效

答案 1 :(得分:3)

使用

 select max(c_id::integer) from tbluser ;

如果您使用的是postgresql数据库

答案 2 :(得分:1)

检查一下,

SELECT max(convert(c_id, signed)) FROM client

在mysql中尝试这个,

SELECT max(cast(c_id AS signed)) FROM client

您可以使用cint函数检查以转换Ms Access

答案 3 :(得分:0)

使用此查询:

从客户端选择max(convert(cid,DECIMAL));

答案 4 :(得分:0)

请使用以下查询。

通过c_id desc limit 1,1;

从客户订单中选择*

答案 5 :(得分:0)

<强>的MySQL

SELECT Max(cast(cid as signed)) FROM client 

<强>的Oracle

SELECT Max(to_number(cid)) FROM client 

<强> MSSQL

SELECT Max(CONVERT(int, cid)) FROM client 

答案 6 :(得分:0)

请检查以下内容:

通过cid desc limit 1,1;

从客户订单中选择*