asp中从数据库中查询
从表1中查询出,id=1的所有cd=2的数据并且按从小到大排列,从第三开始取前三。 这个语句怎么写呀?
补充:例如这条语句,我该怎么修改呢?
call openRs(rs,"select top 3 * from new_info where p_stat=1 and p_vouch=1 order by p_taxis desc, p_addtime desc",1)
从表1中查询出,id=1的所有cd=2的数据并且按从小到大排列,从第三开始取前三。 这个语句怎么写呀?
补充:例如这条语句,我该怎么修改呢?
call openRs(rs,"select top 3 * from new_info where p_stat=1 and p_vouch=1 order by p_taxis desc, p_addtime desc",1)
答案:一个语句解决问题,先取前5个,正序排列,在取前3个倒序排列
SQL = "Select Top 3 * from (Select top 5 * from 表1 Where id = 1 And cd = 2 Order By id asc") Order By id desc
这样就是从第3条到第5条记录了,包括第3条。
看你的问题应该这个意思。
其他:conn.close set conn=nothing end sub % '假定你的数据库连接对象为conn,并且已连接
Dim rs:Set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM [表1] WHERE id=1 AND cd=2" '你确定是id=1并且cd=2 ? 你的id不是主键?
rs.Open sql,conn,1,1
If rs.RecordCount>3 Then '判断条数是否足够
rs.AbsolutePosition=3 '将游标定位到第三条
Do Until rs.EOF Or rs.AbsolutePosition>5 '开始输出
Response.write rs("") '填写你要输出的字段
Loop
Else
Response.write "记录数不足"
End If
上一个:asp.net程序测试!
下一个:我用asp.net平台,目前的图书管理系统中遇到“借阅证号”怎么给每个读者分发,有没有一定的规则,请大侠指