以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  复杂条件表达式  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=125869)

--  作者:susu312
--  发布时间:2018/10/9 8:31:00
--  复杂条件表达式

    \'If vars("filter") <> "" Then
         \'dt.Filter=vars("filter")
    \'End If

    Dim dtb As New DataTableBuilder("占比统计表")
    dtb.AddDef("年龄",Gettype(String),32)
    dtb.AddDef("人数", Gettype(Integer))
    t=dtb.Build()
    For Each c As String In cs.split(",")
         Dim dr1  As DataRow = t.AddNew()
         Dim val As Integer = zd2(c)
         dr1("年龄") = c
         If val = 50 Then
              dr1("人数") = dt.Compute("Count(name)", "age" & " < 60 " )
         Else If val = 90
              dr1("人数") = dt.Compute("Count(name)", "age" & " >= 90" )
         Else
              dr1("人数") = dt.Compute("Count(name)", "age" & " >= " &  val & "  And " & "age" & " < "& val+10 &"" )
         End If
   Next
   \'dt.Filter=""

 

 

红色部分是条件,可以吧那个条件放到compute语句中么?


--  作者:有点甜
--  发布时间:2018/10/9 8:52:00
--  

Dim filter = iif(vars("filter")>"", " and (" & vars("filter") & ")", "")

dr1("人数") = dt.Compute("Count(name)", "age" & " < 60 " &  filter)