在asp中怎么才能实现随机抽取数据库中的记录?

在asp中怎么才能实现随机抽取数据库中的记录?,第1张

用random函数取随机数就可以了然后将取得的随机数用SQL语句查询和你数据库中的某条记录ID是否相同是的话就显示,不是就不显示,要想显示多个随机的记录你可以用DO WHILE循环来做!还不明白发消息问我,顺便把你提问的问题也复制给我,太多了我分不清~

ASP 随机提取数据库记录

<!--#include file="数据库连接"-->

<%

"一个从数据库中随机读取纪录的例子

Set Rs1=server.CreateObject ("adodb.recordset")

Set Rs=server.CreateObject ("ADODB.RECORDSET")

SQL="Select id from Article order by id desc"

rs.Open sql,dataconn,1,1

If not rs.EOF then

total=rs("id") "取最大的ID

rs.Close

'定义随机数..

Randomize

R=Int((total - 1+ 1) * Rnd + 1)

SQL="Select id,content from Article where id="&R

rs.Open sql,dataconn,1,1

if not rs.EOF then

content=RS("content")

content=replace(content,chr(10),"<br>")

content=replace(content,chr(13),"<br>")

content=replace(content,"<br><br>","<br>")

Response.Write content

else

sql1="select content from Article"

rs1.Open sql1,dataconn,1,1

if not rs1.eof then

"取第一条纪录作为默认的显示纪录

content=RS1("content")

content=replace(content,chr(10),"<br>")

content=replace(content,chr(13),"<br>")

content=replace(content,"<br><br>","<br>")

Response.Write content

else

"数据库为空

Response.Write "不存在"

end if

rs1.Close

end if

Rs.Close

end if

set Rs=nothing

%>

随机提取10条记录的例子:

Sql server:

select top 10 * from 表 order by newid()

Access:

Select top 10 * FROM 表 orDER BY Rnd(id)

Rnd(id) 其中的id是自动编号字段,可以利用其他任何数值来完成

比如用姓名字段(UserName)

Select top 10 * FROM 表 orDER BY Rnd(len(UserName))

MySql:

Select * From 表 order By rand() Limit 10

然后你可以用数组来接收,在登陆的时候和数据判断一下就可以了啊!想登陆一次也很简单啊,给一个FLAG标识就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9646829.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存