vb.net。SQL SUM 和 Between,不能求和值



我使用这个语法来对id..之间的一些数据进行求和。但是它只选择最后一个id的值。

我有3个表,有id,到达,出发和距离。

语法如下:

SQLcmd = New SqlCommand("SELECT SUM(CAST(distance AS Numeric(10, 0))) FROM route WHERE id BETWEEN  " & s & "  AND  " & w & "", SQLCon)
    Dim r As SqlDataReader = SQLcmd.ExecuteReader
    r.Read()
    distance2 = r(0).ToString

s且w为整数

所以我在textbox1上显示距离的值。Text = distance2..

问题是,该值不是该查询的SUM,而是textbox1的值。文本是"w"的值在sqlserver上的查询是工作的,我将s和w替换为1和3,但当我在VB.net上使用时,它不工作。

有人能帮忙吗?

我建议在你有

的地方
... " & s & "  AND  " & w & "...

你需要有

... " + s.ToString() + "  AND  " + w.ToString() + " ...

否则&操作符不执行字符串连接,而是执行类型转换。这方面的规则是晦涩难懂的(请看这里的入门)。

最新更新