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


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

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

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | 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)")

 

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


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | 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


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | 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编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | 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("性别") & "'")


 回到顶部