日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于如何生成随机记录

發布時間:2025/4/5 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于如何生成随机记录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

方法一:
在ACCESS環境中用rnd函數解決,以下查詢展示了如何從表中隨機抽取10條記錄
SELECT top 10 * FROM tbl1 ORDER BY Rnd(id)
另外, Rnd(id) 其中的id只是為了提供一個種子,可以利用其他任何數值來完成
id字段是自動編號字段,也可以用其他字段代替,只要能生成數值就行。
如果每次RND得到的結果都一樣,那是因為沒有使用 Randomize 語句來初始化隨機數生成器。

方法二:
在ASP、VB中無法使用上述方法,可以參考使用adodb.recordset.recordcount 屬性以及 adodb.recordset.AbsolutePosition 以及 RND 函數來解決問題。
Function RndID()
??? Dim rs As New ADODB.Recordset
??? Dim strsql As String
??? strsql = "select * from tbl1"
??? rs.CursorLocation = adUseClient
??? rs.Open strsql, CurrentProject.Connection, 2, 3
??? '在Access中可以使用 CurrentProject.Connection,
??? '其他語言中可以用 ADODB.CONNECTION對象。
???
??? Dim i As Long
??? Dim lngCount As Long
??? Dim lngRnd As Long
??? lngCount = rs.RecordCount
??? '一下取前10條隨機記錄
??? For i = 1 To 10
??????? lngRnd = Int((lngCount * Rnd) + 1)
??????? rs.AbsolutePosition = lngRnd
??????? Debug.Print rs("id")
??? Next
End Function


方法三:
用當前 TIME 做種子生成隨機數。如果時間重復最終還是重復,沒有從根本上解決問題,說白了還是種子的問題。要不重復就要徹底解決種子的問題,如果能取得毫秒級時間就基本能解決了
或者建議在組織 SQL 語句的時候有意插入一個 VB 函數生成的隨機值作為種子也可以
Dim sql
Dim RNUM
Randomize
RNUM = Rnd
sql = "select top 1 * from tbl1 order by rnd(" & RNUM & "-id)"

其中,方法三已經經過驗證,可以使用。

附:
關于用 SQL 得到 Access 的隨機記錄集????
此問題早已有人提出,解決的方法也非原創。寫這篇東西,意在共同探討。畢竟目前還沒有非常滿意的結論。先說說現在網上大多數轉貼是這樣說的:

SQL Server 2000:
SELECT TOP n * FROM tanblename ORDER BY NEWID()

Access:
SELECT TOP n * FROM tanblename ORDER BY rnd([一個自動編號字段])

SQL 有了 NEWID() 就無須多講拉,但 Access 中沒有,所以寄望于 RND,實際上這條語句在 Access 中的“查詢”中是可以運行并得到隨機結果的,但在 ASP 中卻無法得到預期的隨機效果——無論如何刷新得到的結果都是一樣的(就算在語句前加上 Randomize 也一樣于事無補)。

當然,也不少其他的解決方法,用數組的,用循環的……不好說不對,但總覺得跑題了。后來有另外的朋友試驗出這個方法:表 TestTable,有自動編號字段 TestID,標題字段 TestTitle,隨機取得5條紀錄,用代碼:

Randomize
SELECT TOP 5 [TestTitle] FROM [TestTable] ORDER BY Rnd(-(TestID+"&Rnd()&"))

實際上,我目前需要應用到隨機紀錄的地方就是用的這條語句,除此我沒有其他更好的方法(但用過才知道,其實這條語句偶然會生成重復紀錄的)。也許你會有更好的方法……

轉載于:https://www.cnblogs.com/cole2295/archive/2009/07/11/1520997.html

總結

以上是生活随笔為你收集整理的关于如何生成随机记录的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一区二区三区在线观看视频 | 韩国精品一区 | 久久久久久久黄色片 | 国产免费av电影 | 无码一区二区精品 | 91一区二区国产 | 四虎一国产精品一区二区影院 | 欧美激情电影一区二区 | 天堂在线精品 | 大地资源影视在线播放观看高清视频 | 日本少妇在线 | 日本系列第一页 | 97超碰在| 国产麻豆精品视频 | 欧美在线观看视频 | av免费网址在线观看 | 亚洲欧美日韩精品久久亚洲区 | 亚洲欧美成人网 | 日本亲子乱子伦xxxx50路 | 欧美日韩精品久久久免费观看 | 澳门久久| 欧美日韩极品 | 久久亚洲精| 91玖玖| 69xxx国产 | 看日本黄色录像 | 久久精品无码一区 | 日韩中文字幕影院 | 欧亚成人av | 调教丰满的已婚少妇在线观看 | 久久中文字幕精品 | 亚洲 高清 成人 动漫 | 182tv午夜 | 免费观看成年人视频 | 国产福利不卡视频 | 午夜精品在线 | 在线视频午夜 | 一本久久道 | 1024久久 | 亚洲精品国产精品乱码视色 | 五月婷婷av | 亚洲精品久久久久久久蜜桃 | 双乳被四个男人吃奶h文 | av动态 | 亚洲色图18p | 中文字幕 自拍偷拍 | 五月天丁香网 | 中文字幕无线码一区 | 日皮视频免费看 | www三级免费 | 看片网址国产福利av中文字幕 | 国产不卡毛片 | 美女综合网 | 一级做a爱片性色毛片 | 色欲久久久天天天综合网 | 国产精品99久久久久久久 | 久久久久久久国产精品美女 | 美女一区二区三区四区 | free性娇小hd第一次 | av在线免费播放网址 | 国产精品久久久久久亚洲 | 亚洲精品国产精品国自产在线 | 亚洲五月天综合 | 夜夜躁日日躁狠狠久久av | 色偷偷一区二区三区 | 国产人妖网站 | 涩涩视频软件 | 亚洲人视频在线 | 国产精品久久久久久久久久久久久久久久 | 国产精品福利一区二区 | 日韩精品卡通动漫网站 | 久久伊人草 | 97人妻精品一区二区三区 | 国内视频精品 | 国产女教师一区二区三区 | 日韩视频在线观看一区二区三区 | 精品人妻人人做人人爽 | 日本一区二区人妻 | www精品视频 | 97福利在线 | 国产第113页| 日本啊啊视频 | 成人免费一区二区 | 国产精品自拍99 | 中文字幕97 | 三女警花合力承欢猎艳都市h | 午夜久久一区 | 国产视频一区二区三区四区五区 | 美日韩在线视频 | 性――交――性――乱睡觉 | 超碰影院在线 | 亚洲色图一区二区三区 | 欧美精品做受xxx性少妇 | 久久国产热视频 | 免费欧美一区 | 丝瓜色版 | 性久久| 在线一区二区观看 | 亚洲青青草原 |