私は次のコードを持っています:
strSQL = "SELECT COUNT(*) AS anz FROM tbl_ergebnisse WHERE testavg >0"
set rs3 = Conn.Execute(strSQL)
Response.Write "Count(*): <br>"
if not rs3.eof then
Response.Write "Anz: " & rs3("anz")
else
Response.Write "EOF"
end if
strSQL = "SELECT testavg FROM tbl_ergebnisse WHERE testavg >0"
set rs2 = Conn.Execute(strSQL)
Response.Write "Entries: <br>"
do while not rs2.eof
Response.Write rs2("testavg") & "<br>"
rs2.MoveNext()
loop
strSQL = "SELECT AVG(testavg) AS mittelwert FROM tbl_ergebnisse WHERE testavg >0"
set rs = Conn.Execute(strSQL)
if not rs.eof then
Response.Write "Mittelwert: " & rs("mittelwert")
else
Response.Write "EOF"
end if
これは奇妙な結果をもたらします。クエリ1は「4」を返します(カウントは正しいです)。クエリ2は結果を返さず、クエリ3も結果を返しません
テーブル「tbl_ergebnisse」は次のようになります
testavg (DECIMAL)
エントリ付き:3; 3; 4; 5;
表のデータのスクリーンショットはここにあります:www.trinews.at/data.png
空のレコードセットを取得する理由はありますか?データベースで直接クエリを実行すると、正しい値が返されます。