国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

四種數據庫,取隨機記錄的方法

2024-07-21 02:05:54
字體:
來源:轉載
供稿:網友
  • 本文來源于網頁設計愛好者web開發社區http://www.html.org.cn收集整理,歡迎訪問。

  • mysql:select * from tablename order by rand() limit 10sqlserver:select top 10 * from tablename order by newid()

    oracle:使用 dbms random value的一種方法


    sql> select *from (select *from t order by dbms_random.value) where rownum<10;

             a ----------         39        101        134          5         83         97         96        140         81

    已選擇9行。

    sql> select *from (select *from t order by dbms_random.value) where rownum<10;

             a ----------         27        118        141        103        128         10        142         68         74  有人說這是一種效率最差的方法,懇請告知比這更好的解決方案!

    access(一):
    yourstr="*1*3*4*6*12*...."sql="select top 10 * form yourdb where instr('*'&id&'*','"&yourstr&"')<>0
    access(二):
    <%   n=10    ''取任意10條記錄   set rs = server.createobject ("adodb.recordset")      sql = "select * from table"      rs.open sql,conn,1,1      count=rs.recordcount   ''記錄總數      if count<>empty then         randomize               for i = 1 to n       ''循環n次           num=fix(rnd*count) ''num便是隨機產生的記錄行數,用fix(),使其不會大于count值。           rs.move num    ''移到改隨機行           response.write rs(0)   ''出該條記錄        rs.movefirst     ''別忘了再把指針移到第一條        next      end if      rs.close   set rs = nothing%>



    sql> select *from (select *from t order by dbms_random.value) where rownum<10;

             a ----------         39        101        134          5         83         97         96        140         81

    已選擇9行。

    sql> select *from (select *from t order by dbms_random.value) where rownum<10;

             a ----------         27        118        141        103        128         10        142         68         74  有人說這是一種效率最差的方法,懇請告知比這更好的解決方案!

    access(一):
    yourstr="*1*3*4*6*12*...."sql="select top 10 * form yourdb where instr('*'&id&'*','"&yourstr&"')<>0
    access(二):
    <%   n=10    ''取任意10條記錄   set rs = server.createobject ("adodb.recordset")      sql = "select * from table"      rs.open sql,conn,1,1      count=rs.recordcount   ''記錄總數      if count<>empty then         randomize               for i = 1 to n       ''循環n次           num=fix(rnd*count) ''num便是隨機產生的記錄行數,用fix(),使其不會大于count值。           rs.move num    ''移到改隨機行           response.write rs(0)   ''出該條記錄        rs.movefirst     ''別忘了再把指針移到第一條        next      end if      rs.close   set rs = nothing%>
    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 板桥市| 环江| 宁乡县| 错那县| 中江县| 银川市| 翁牛特旗| 佛教| 平阳县| 古田县| 观塘区| 蓬安县| 新巴尔虎左旗| 五寨县| 阳春市| 神池县| 安多县| 沁水县| 大城县| 泽普县| 文登市| 常山县| 邓州市| 台州市| 潮州市| 蓬莱市| 泽州县| 福安市| 双流县| 麦盖提县| 方山县| 宁津县| 嘉荫县| 武山县| 香格里拉县| 枣庄市| 仙游县| 龙南县| 东丰县| 墨竹工卡县| 壶关县|