选择MAX值错误

时间:2013-08-28 00:55:58

标签: mysql max

这是我选择最大JO_NO的代码:

strQ = "SELECT MAX(JO_NO) + 1 from js_hdr"

    cmd = New MySqlCommand(strQ, con)
    Try
        con.Open()
        rs = cmd.ExecuteReader
        While rs.Read

           txtJO.Text = IIf(Not IsDBNull(rs.Item("JO_NO")), rs.Item("JO_NO"), 0)

        End While
        rs.Close()

    Catch ex As Exception
        MsgBox(ex.Message)
    Finally
        con.Close()
    End Try

此代码中的错误是:在结果中找不到指定的列:JO_NO

我已检查过我的表,并且有一列JO_NO。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您没有为计算列设置任何别名,这就是无法找到列的原因。

strQ = "SELECT MAX(JO_NO) + 1 AS JO_NO from js_hdr"

如果你想使用查询将值设置为零,如果还没有记录,你可以使用COALESCE

strQ = "SELECT COALESCE(MAX(JO_NO), 0) + 1 AS JO_NO from js_hdr"
// other codes 
txtJO.Text = rs.Item("JO_NO")