帮我写一段代码

来源:百度知道 编辑:UC知道 时间:2024/05/10 11:21:25
用3个label显示表A中 最大的三个字段a的值 所对应的字段b中的内容 被那个用另外3个label显示字段a的内容
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db1.mdb;Persist Security Info=False"
cnn.Open
rs.Open "select top 1 * from A order by a desc", cnn, adOpenKeyset, adLockOptimistic, -1
Label2.Caption = rs.Fields("b")
Label2.DataField = "b"
rs.Close

这是我写的,但是显示出来的是表中第一条记录的值,并不是最大记录的值,并且。我不晓得应该怎么写查询第二大,第三大数据的查询语句
那位能给写咯详细的代码?谢谢了~vb6.0
第一行~~呃。。有三个字大家自动忽略掉吧“被那个”。。。

应该把查询执行语句“rs.Open "select top 1 * from A order by a desc", cnn, adOpenKeyset, adLockOptimistic, -1 ”中的1(select top 1表示查询结果集中的前1条)改为3(表示前3条)……要将结果依次显示出来,可以通过循环语句或者移动记录指针进行扫描,如下:
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db1.mdb;Persist Security Info=False"
cnn.Open
rs.Open "select top 3 * from A order by a desc", cnn, adOpenKeyset, adLockOptimistic, -1

Label1.Caption = rs.Fields("b")
Label1.DataField = "b"
rs.MoveNext '移向下一条记录
Label2.Caption = rs.Fields("b")
Label2.DataField = "b"
rs.MoveNext
Label3.Caption = rs.Fields("b")
Label3.DataField = "b"
rs.Close

看得明白吧?

rs.Open "select top 3 * from A order by a desc", cnn, adOpenKeyset, adLockOptimistic, -1
rs.MoveFirst '就是先移动到第一条记录,
Label1.Caption = rs.Fields("b"