随机抽取 随机抽取数据库中的记录
随机抽取数据库中的记录

数据库里有 条记录 随机抽取 条
code <% 数据库连接 Set objConn = Server CreateObject( ADODB Connection )objConn ConnectionString = Provider=Microsoft Jet OLEDB ; &_ Data Source= & Server MapPath( data mdb )objConn Open 数据库连接 检索数据 strSQL = SELECT id DataColumn FROM DataTable Sql语句 检索数据库Set objRS = Server CreateObject( ADODB Recordset ) 创建记录集objRS Open strSQL objConn 执行检索Count=objRS RecordCount 得到记录总数Item= 显示记录数 检索数据
redim a(Item ) t(Count) 定义 数组 数组a用来储存记录 数组t用来删选记录
初始数组数值 目的为了插入数据以后和此值做比较for each j in t j= next
随机抽取记录号Randomize timer 初始化随机数生成器for j= to Item k=int(rnd*Count+ ) 从总数里面随机取一条记录 do while t(k)<> 判断是否记录是否已经在数组中 k=int(rnd*Item+ ) loop t(k)= 第k条记录被选中next j= :i= 定义下标
循环选取数据集objRS中的部分记录存放到数组中Do While Not objRS Eof if t(j)= then a(i )=objRS( id ) 记录id a(i )=objRS( DataColumn ) 记录内容 i=i+ end ifj=j+ objRS MoveNextLoop
显示内容 for i= to ItemResponse write 序号 &a(i )& <br> Response write 内容 &a(i )& <p> next 显示内容
释放资源objRs Closeset objRs=nothingobjConn Closeset objConn=nothing %>
Dataid DataColumn a b c d e
lishixinzhi/Article/program/net/201311/14267