Foxtable(狐表)用户栏目专家坐堂 → 如何实现统计不同性别的不同年龄段的数量?


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

主题:如何实现统计不同性别的不同年龄段的数量?

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


加好友 发短信
等级:三尾狐 帖子:698 积分:5618 威望:0 精华:0 注册:2013/4/9 6:59:00
如何实现统计不同性别的不同年龄段的数量?  发帖心情 Post By:2018/4/8 17:21:00 [只看该作者]

比如
性别 年龄
男    25
女    25
怎样统计出
性别  年龄段_21到25岁
  男              1
  女              1
合计             2
[此贴子已经被作者于2018/4/8 17:23:09编辑过]

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


加好友 发短信
等级:超级版主 帖子:110795 积分:563913 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/8 17:45:00 [只看该作者]


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


加好友 发短信
等级:三尾狐 帖子:698 积分:5618 威望:0 精华:0 注册:2013/4/9 6:59:00
  发帖心情 Post By:2018/4/9 9:14:00 [只看该作者]

统计演示里科目例如语文列下就是需要统计的数字,我现在的表“性别”下不是数字,需要统计的是相应性别的年龄,需要怎么改才可以?

[此贴子已经被作者于2018/4/9 9:44:10编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/9 10:25:00 [只看该作者]

比如

 

b.Totals.AddExp("分布_21到25","iif(分数 >= 21 And 分数 <= 25,1,0)")

 

如果不会做,上传具体项目


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


加好友 发短信
等级:三尾狐 帖子:698 积分:5618 威望:0 精华:0 注册:2013/4/9 6:59:00
  发帖心情 Post By:2018/4/9 10:41:00 [只看该作者]

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


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/9 11:32:00 [只看该作者]

参考代码

 

Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("糖尿病")
If e.DataCol.Name = "性别" And dr.IsNull("性别") = False Then
    Dim d As Date = Date.Today
    Dim filter As String = "出生年月 >= #" & d.AddYears(-15) & "# and 出生年月 < #" & d & "#"
    dr("糖尿病年龄分布_0到15岁") = dt.Compute("Count(性别)", "性别 = '" & e.DataRow("性别") & "' and " & filter)
    filter = "出生年月 >= #" & d.AddYears(-20) & "# and 出生年月 < #" & d.AddYears(-15) & "#"
    dr("糖尿病年龄分布_15到20岁") = dt.Compute("Count(性别)", "性别 = '" & e.DataRow("性别") & "' and " & filter)
    filter = "出生年月 >= #" & d.AddYears(-25) & "# and 出生年月 < #" & d.AddYears(-20) & "#"
    dr("糖尿病年龄分布_21到25岁") = dt.Compute("Count(性别)", "性别 = '" & e.DataRow("性别") & "' and " & filter)
End If


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


加好友 发短信
等级:三尾狐 帖子:698 积分:5618 威望:0 精华:0 注册:2013/4/9 6:59:00
  发帖心情 Post By:2018/4/9 17:41:00 [只看该作者]

用年龄而不是出生日期怎么改?

count(性别)这里可以改成count(编号)吗?
[此贴子已经被作者于2018/4/9 17:52:31编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/9 18:47:00 [只看该作者]

用年龄更加简单

 

Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("糖尿病")
If e.DataCol.Name = "性别" And dr.IsNull("性别") = False Then
    Dim d As Date = Date.Today
    Dim filter As String = "年龄 >= 0 and 年龄 < 15"
    dr("糖尿病年龄分布_0到15岁") = dt.Compute("Count(编号)", "性别 = '" & e.DataRow("性别") & "' and " & filter)
    filter = "年龄 >= 15 and 年龄 < 20"
    dr("糖尿病年龄分布_15到20岁") = dt.Compute("Count(性别)", "性别 = '" & e.DataRow("性别") & "' and " & filter)
End If

[此贴子已经被作者于2018/4/9 18:47:58编辑过]

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


加好友 发短信
等级:三尾狐 帖子:698 积分:5618 威望:0 精华:0 注册:2013/4/9 6:59:00
  发帖心情 Post By:2018/4/10 9:06:00 [只看该作者]

多谢

不同性别下的最大年龄怎么写?试着改了一下,没有改成功。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/10 9:42:00 [只看该作者]

 

dr("最大年龄") = dt.Compute("max(年龄)", "性别 = '" & e.DataRow("性别") & "'")


 回到顶部