0

我需要在 vb.net 中运行 SQL 查询来找到我的应用程序的平均评分。我认为这是执行此操作的正确 SQL:

SELECT AVG(Rating) FROM Feedback;

唯一的问题是我不确定如何正确运行此查询。我有一个类似的查询,我已将其更改为以下内容(它不起作用),我只是想知道您是否可以帮助调整它以使其真正起作用?

    Dim conn As New MySqlConnection(DBCred)
    Dim sqlquery As String = "SELECT AVG(Rating) FROM Feedback;"
    Dim cmd As MySqlCommand
    Dim AVGRating As String
    conn.Close()
    cmd = New MySqlCommand(sqlquery, conn)
    conn.Open()
    Try
        AVGRating = cmd.r
    Finally
        cmd.Connection.Close()

    End Try
    conn.Close()

谢谢克里斯

4

2 回答 2

1

试试这个。

    Dim AVGRating As String = String.Empty
    Using xConn As New MySqlConnection(DBCred)
        Using xComm As New MySqlCommand()
            With xComm
                .Connection = xConn
                .CommandType = CommandType.Text
                .CommandText = "SELECT AVG(Rating) FROM Feedback WHERE Feedback.Rating > 0"
            End With
            Try
                xConn.Open()
                AVGRating = CStr(xComm.ExecuteScalar)
            Catch ex As Exception
                MsgBox(ex.Message.ToString)
            Finally
                xConn.Close()
            End Try
        End Using
    End Using

链接:SqlCommand 对象中的 ADO.NET ExecuteScalar

于 2012-09-02T16:49:59.623 回答
0

您需要执行命令 - 在这种情况下,使用ExecuteScalar

AVGRating = cmd.ExecuteScalar().ToString()
于 2012-09-02T16:47:11.833 回答