Foxtable(狐表)用户栏目专家坐堂 → 表的分段截取如何操作!


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

主题:表的分段截取如何操作!

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


加好友 发短信
等级:一尾狐 帖子:494 积分:6014 威望:0 精华:0 注册:2015/4/5 14:08:00
表的分段截取如何操作!  发帖心情 Post By:2021/9/16 20:22:00 [只看该作者]

数据表:表一
  一分类 二分类   三分类   备注 
  冷冻  50元内   10   
  冷冻  60元内   20   
  冷冻  70元内   30   
   日常  50元内    40   
   日常   60元内     50                  
   日常 70元内   60   
  常温 50元内   70   
  常温 60元内   80   
  常温 70元内   90      
    
生成的临时表

二分类   冷冻  日常   常温  二分类    冷冻日常常温 
  50元内   10  40  70  70元内    30    60  90        
  60元内  20  50   80                 

1.根据二分类总计行数,分成重复的两部分,假如有42行数据,生成的临时表至少不能小于21行。
2.截取总计行数,分两部分填充到:生成的临时表

老师:我使用了一些方法总不能如意,比如分段截取,希望老师指点,谢谢!

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110768 积分:563772 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/16 20:31:00 [只看该作者]

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("
二分类", GetType(String), 16)
dtb.AddDef("
冷冻", GetType(Integer))
dtb.AddDef("
日常", GetType(Integer))
dtb.AddDef("
常温", GetType(Integer))
dtb.Build()
MainTable
Tables("统计")
dim dr as datarow
for each s as string in DataTable("表一").getvalues("二分类")
dr = DataTables("统计").addnew
dr("二分类") = s
for each dr2 as datarow in DataTable("表一").select("二分类='" & s & "'")
dr(dr2("一分类")) = dr2("三分类")
next
next

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


加好友 发短信
等级:一尾狐 帖子:494 积分:6014 威望:0 精华:0 注册:2015/4/5 14:08:00
  发帖心情 Post By:2021/9/16 21:20:00 [只看该作者]

谢谢老师,不过我想要的是:生成的临时表,相同的4列重复并排显示,或者是2个、4个重复,是想把“分类一”分成4份获取填充,比如:表一100行数据,如果分成4份,那么临时表25行,平均每份25行数据,不知道如何做!

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


加好友 发短信
等级:一尾狐 帖子:494 积分:6014 威望:0 精华:0 注册:2015/4/5 14:08:00
  发帖心情 Post By:2021/9/16 21:23:00 [只看该作者]

临时表的行数是根据表一的数据量按份数平均下来的!比如表一100行,分两份,就是50行,分4份,就是25行,我是不知道怎么分怎么填充,不知道我有没有讲清楚,谢谢老师!

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110768 积分:563772 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/16 21:35:00 [只看该作者]

分两份
Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("
二分类", GetType(String), 16)
dtb.AddDef("
冷冻", GetType(Integer))
dtb.AddDef("
日常", GetType(Integer))
dtb.AddDef("
常温", GetType(Integer))
dtb.AddDef("二分类1", GetType(String), 16,"","二分类")
dtb.AddDef("冷冻1", GetType(Integer),"","冷冻")
dtb.AddDef("日常1", GetType(Integer),"","日常")
dtb.AddDef("常温1", GetType(Integer),"","常温")
dtb.Build()
MainTable
Tables("统计")
dim dr as datarow
Dim Products As List(Of String) = DataTable("表一").getvalues("二分类")
for i as integer = 0 to math.Floor(Products.count / 2) - 1
dr = DataTables("统计").addnew
dr("二分类") = s
for each dr2 as datarow in DataTable("表一").select("二分类='" & s & "'")
dr(dr2("一分类")) = dr2("三分类")
next
next
for i as integer = math.Floor(Products.count / 2) to Products.count - 1
dr = DataTables("统计").addnew
dr("二分类1") = s
for each dr2 as datarow in DataTable("表一").select("二分类='" & s & "'")
dr(dr2("一分类") & 1) = dr2("三分类")
next
next

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


加好友 发短信
等级:一尾狐 帖子:494 积分:6014 威望:0 精华:0 注册:2015/4/5 14:08:00
  发帖心情 Post By:2021/9/16 21:40:00 [只看该作者]

谢谢老师,打开了我的思路!非常感谢!

 回到顶部