Foxtable(狐表)用户栏目专家坐堂 → 请教一个统计问题!


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

主题:请教一个统计问题!

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/16 18:21:00 [显示全部帖子]

 做个foxtable例子上传上来。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/19 11:00:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.table


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/19 15:09:00 [显示全部帖子]

 做个按钮执行代码

 


For Each dr As DataRow In DataTables("表b").Select("客人名字 is not null")
    Dim sumall As Double = 0
    For Each name As String In dr("客人名字").split(" ")
        Dim sum As Double = DataTables("表A").compute("sum(单价)", "购piao人 like '%" & name & "%'")
        If sum = 0 Then
            msgbox(name & " 不存在")
        End If
        sumall += sum
    Next
    dr("金额") = sumall
Next


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/19 18:04:00 [显示全部帖子]

Select Case e.DataCol.name
    Case "客人名字"

        Dim str As String = System.Text.RegularExpressions.Regex.replace(e.DataRow("客人名字"), "[0-9\.]", "")
        e.datarow("客人名字") = str
End Select


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/20 9:28:00 [显示全部帖子]

以下是引用bootes29在2017/6/19 23:16:00的发言:
感谢大师回复,是的 这也是我想的,但是这样数据库是不是会变得无比庞大?
每个人名对应一个价格?然后,父子表小组对应人名?

 

就这样做没问题。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/20 10:57:00 [显示全部帖子]

Dim dt1 As DataTable = DataTables("表A")
Dim dt2 As DataTable = DataTables("表B")
For Each dr As DataRow In dt1.Select("购piao人 is not null")
    For Each s As String In dr("购piao人").split(" ")
        Dim ndr As DataRow = dt2.addnew
        ndr("第一列") = s
        ndr("第二列") = dr("单价")
    Next
Next

 回到顶部