如何从ACCESS中随机读取3条记录?
楼主mouse0987(飞狐)2006-12-21 10:31:39 在 Web 开发 / ASP 提问如何从ACCESS中随机读取3条记录? 问题点数:100、回复次数:13Top
1 楼mouse0987(飞狐)回复于 2006-12-21 10:48:10 得分 0
高手快来呀!Top
2 楼yeaky()回复于 2006-12-21 10:48:24 得分 10
SELECT top 3 * FROM 表 ORDER BY Rnd(id)Top
3 楼webmm(一笑而过)回复于 2006-12-21 10:53:21 得分 5
楼上正解Top
4 楼mouse0987(飞狐)回复于 2006-12-21 11:54:22 得分 0
这样虽然可以随机,但每次刷新的结果好像还是一样。
读取的记录好像没有变化呀?Top
5 楼SDDKILLER()回复于 2006-12-21 12:01:29 得分 60
Set rs = Server.CreateObject("Adodb.RecordSet")
rs.open sql,conn,1,1
DIM Appeared
Call DisRndRecord(10,rs.recordCount)'调用函数该位置显示记录
'################SUBS################
'#DisRndRecord(DisNum,rsBound)
'#参数DisNum:显示数量
'#参数rsBound:随机数产生范围
Sub DisRndRecord(DisNum,rsBound)
DIM i,ThisRnd
If rsBound < DisNum Then DisNum = rsBound'记录总数小于要抽取记录条数的情况
For i = 0 To DisNum - 1
ThisRnd = GetRnd(rsBound)'取得一个不重复的随机数
rs.Move(ThisRnd)'游标移动到随机数位置数读取
Response.Write("<br/>("&rs("id")&")"&rs("Title"))
rs.Move(-ThisRnd)
Next
End Sub
'# 函数GetRnd(bound)返回一个不重复的随机数字
'#参数bound:随机范围
Function GetRnd(bound)
DIM ranNum
Randomize()
ranNum=int(bound*rnd)
If Instr(Appeared,"["&ranNum&"]") Then '产生的随机数是否出现过
ranNum = getRnd(bound)
End If
Appeared = Appeared & "["&ranNum&"]" '记录已出现的随机数
GetRnd = ranNum
End Function
Top
6 楼SDDKILLER()回复于 2006-12-21 12:02:52 得分 5
PS这个问题昨天有人提问了,随机读取3个图片信息,而且不能和现在显示的相同,这个可以做到的Top
7 楼SDDKILLER()回复于 2006-12-21 12:05:00 得分 5
而且这个可以随机产生N个(N>1 安定N<recordcount)的随机记录~~Top
8 楼mouse0987(飞狐)回复于 2006-12-21 12:06:43 得分 0
谢谢各位高手,一会给你们加分!哈哈!Top
9 楼net_lover(【孟子E章】)回复于 2006-12-21 12:45:57 得分 5
ORDER BY Rnd(id)
是不行的。,access有缓存Top
10 楼mouse0987(飞狐)回复于 2006-12-21 12:57:42 得分 0
谢谢了,刚吃完饭回来,下午给大家发银子。呵呵!Top
11 楼net_lover(【孟子E章】)回复于 2006-12-21 13:02:33 得分 5
http://dotnet.aspx.cc/article/1a54941d-94cc-4a3e-9b67-3e72af16c49a/read.aspxTop
12 楼net_lover(【孟子E章】)回复于 2006-12-21 13:03:57 得分 5
asp里这样
Randomize()
intRandomNumber = Int (1000*Rnd)+1
sql = "select top 3 * from Question Order By Rnd(" & (-1 * intRandomNumber) & "*id)"
Top
13 楼mouse0987(飞狐)回复于 2006-12-21 14:20:52 得分 0
SDDKILLER() 你好棒给你60分。
剩的40分散给其他兄弟们了。你不会介意吧!哈哈Top
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |








网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)