Foxtable(狐表)用户栏目专家坐堂 → [求助]怎样从表格中随机抽取几行


  共有2780人关注过本帖树形打印复制链接

主题:[求助]怎样从表格中随机抽取几行

帅哥哟,离线,有人找我吗?
hrdlfoxtable
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:110 威望:0 精华:0 注册:2015/4/1 14:54:00
[求助]怎样从表格中随机抽取几行  发帖心情 Post By:2015/4/2 16:04:00 [只看该作者]

比如我有一个专家库的表格,里面有很多行,每行一个专家信息,做一个按钮,第一下随机从表中抽取几行显示出来

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/2 16:10:00 [只看该作者]

利用随机函数 http://www.foxtable.com/help/topics/0349.htm

datatables("XX").datarows(Rand.Next(datatables("XX").datarows.Count-1))

随机获得一行

 回到顶部
帅哥哟,离线,有人找我吗?
hrdlfoxtable
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:110 威望:0 精华:0 注册:2015/4/1 14:54:00
  发帖心情 Post By:2015/4/2 16:12:00 [只看该作者]

先谢谢,我反应慢,还要慢慢试,先提前感谢

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7253 积分:40736 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2015/4/2 21:43:00 [只看该作者]

从表中随机抽取行通用代码:

 

Dim s As String =  CurrentTable.DataTable.GetComboListString("_Identify")
Dim Values() As String
Values = s.Split("|")
Dim n As Integer = Math.Min(Values.Length - 1,3)  '调整此行代码括号内最后一个参数为您需要的任意行数,不足三行时全选
Dim idf,Filter As String
Filter = "|"
Do While n > 0
    idf = Values(Rand.Next(Values.Length - 1))
    If Filter.Contains("_Identify = " & idf) = False
        Filter = Filter & " or _Identify = " & idf
        n = n-1
    End If
    Filter = Filter.Replace("| or ","")
Loop
CurrentTable.Filter = Filter


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/4/3 9:09:00 [只看该作者]

随机抽取少量行的标准代码:

 

Dim ids As String
Dim lst As new List(of String)
Dim cnt As Integer = DataTables("表A").DataRows.Count
Do
    Dim Id As Integer = rand.Next(0,cnt)
    id = DataTables("表A").DataRows(id)("_Identify")
    If lst.Contains(id) =False Then
        lst.Add(id)
    End If
    ids = ids & id & ","
Loop While lst.count < 5   '5是要抽取的行数
Tables("表A").Filter = "[_Identify] In (" & ids.Trim(",") & ")"

[此贴子已经被作者于2015/4/3 9:12:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7253 积分:40736 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2015/4/3 16:52:00 [只看该作者]

顶,现在这样效率高多了!


 回到顶部
帅哥哟,离线,有人找我吗?
花开的声音
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1172 积分:8418 威望:0 精华:0 注册:2012/10/29 20:09:00
  发帖心情 Post By:2016/12/21 15:42:00 [只看该作者]

mark

 回到顶部