Foxtable(狐表)用户栏目专家坐堂 → [求助]如何求出同一列中相同特征的行的数量?


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

主题:[求助]如何求出同一列中相同特征的行的数量?

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


加好友 发短信
等级:小狐 帖子:339 积分:3364 威望:0 精华:0 注册:2011/3/22 22:52:00
[求助]如何求出同一列中相同特征的行的数量?  发帖心情 Post By:2018/3/8 15:41:00 [只看该作者]

统计出表A“页码”列中,同一流水号下包含相同特征“-”行的数量。

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看


[此贴子已经被作者于2018/3/8 15:46:25编辑过]

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


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

没看懂你的逻辑。

 

上传具体项目,说明要计算什么,最后计算结果放到哪里。


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


加好友 发短信
等级:小狐 帖子:339 积分:3364 威望:0 精华:0 注册:2011/3/22 22:52:00
  发帖心情 Post By:2018/3/8 16:16:00 [只看该作者]

就是统一同一流水号(如48615)下,页码列中有3个包含“-”字符的。我想得到这个“3”。
48611中,为3。
48612中,为2。
获得这些数据,以便用于其它地方引用的。
[此贴子已经被作者于2018/3/8 16:20:07编辑过]

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


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

比如代码

 

Dim n = DataTables("表A").Compute("count(流水号)", "流水号 = '48615' and 页码 like '%-%'")

msgbox(n)


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


加好友 发短信
等级:小狐 帖子:339 积分:3364 威望:0 精华:0 注册:2011/3/22 22:52:00
  发帖心情 Post By:2018/3/9 11:11:00 [只看该作者]

这是一个一个计算,不是我想要的。我需要算出每个流水号对应的n值,并且能够引用这个n值到另外的代码中。弄了半天,没搞出来。
以下是引用有点甜在2018/3/8 17:15:00的发言:

比如代码

 

Dim n = DataTables("表A").Compute("count(流水号)", "流水号 = '48615' and 页码 like '%-%'")

msgbox(n)

[此贴子已经被作者于2018/3/9 11:11:41编辑过]

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


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


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


加好友 发短信
等级:小狐 帖子:339 积分:3364 威望:0 精华:0 注册:2011/3/22 22:52:00
  发帖心情 Post By:2018/3/9 18:01:00 [只看该作者]

刷新表格DAJG_SSFZXX列“LSH”,运行如下代码,为什么系统会崩溃呢?如何解决?

   For Each nm As String In DataTables("DAJG_SSJCBM").GetValues("LSH")
            Dim dr As DataRow =  DataTables("DAJG_SSFZXX").AddNew()
            dr("LSH") = nm
            Dim n = DataTables("DAJG_SSJCYX").Compute("count([LSH])", "LSH = 'nm' and YEMA Like '%-%'")
            msgbox(n)
            If e.DataRow.IsNull("LSH") = False Then
                Dim Filter As String = "[LSH] = '" & e.DataRow("LSH") & "' and [JZLB] =  'Z'  "
                Dim maxCH As String = DataTables("DAJG_SSJCBM").compute("max(CH)", Filter)
                Dim maxP2 As String = DataTables("DAJG_SSJCBM").compute("max(P2)", filter)
                If maxCH = Nothing Then
                    e.DataRow("ZJCS") = 0
                    e.DataRow("ZJYS") = 0
                Else
                    e.DataRow("ZJCS") = maxCH
                    e.DataRow("ZJYS") = maxP2 +3 + n                    
                End If
                Dim FilterB As String = "[LSH] = '" & e.DataRow("LSH") & "' and [JZLB] =  'F'  "
                Dim maxCHB As String = DataTables("DAJG_SSJCBM").compute("max(CH)", FilterB)
                Dim maxP2B As String = DataTables("DAJG_SSJCBM").compute("max(P2)", filterB)
                If maxCHB = Nothing Then
                    e.DataRow("FJCS") = 0
                    e.DataRow("FJYS") = 0
                Else
                    e.DataRow("FJCS") = maxCHB
                    e.DataRow("FJYS") = maxP2B +3 + n                    

                End If
            End If
            Dim dr1 As DataRow = e.DataRow
            dr1("AJZCS") = dr1("ZJCS") + dr1("FJCS")
           
        Next

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ls.zip


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


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

Select Case e.DataCol.Name
    Case "LSH"
        If e.DataRow.IsNull("LSH") = False Then
           
            Dim n = DataTables("DAJG_SSJCYX").Compute("count([LSH])", "LSH = '" & e.DataRow("LSH") & "' and YEMA Like '%-%'")
            msgbox(n)
           
            Dim Filter As String = "[LSH] = '" & e.DataRow("LSH") & "' and [JZLB] =  'Z'  "
            Dim maxCH As String = DataTables("DAJG_SSJCBM").compute("max(CH)", Filter)
            Dim maxP2 As String = DataTables("DAJG_SSJCBM").compute("max(P2)", filter)
            If maxCH = Nothing Then
                e.DataRow("ZJCS") = 0
                e.DataRow("ZJYS") = 0
            Else
                e.DataRow("ZJCS") = maxCH
                e.DataRow("ZJYS") = maxP2 +3 + n
            End If
            Dim FilterB As String = "[LSH] = '" & e.DataRow("LSH") & "' and [JZLB] =  'F'  "
            Dim maxCHB As String = DataTables("DAJG_SSJCBM").compute("max(CH)", FilterB)
            Dim maxP2B As String = DataTables("DAJG_SSJCBM").compute("max(P2)", filterB)
            If maxCHB = Nothing Then
                e.DataRow("FJCS") = 0
                e.DataRow("FJYS") = 0
            Else
                e.DataRow("FJCS") = maxCHB
                e.DataRow("FJYS") = maxP2B +3 + n
               
            End If
        End If
        Dim dr1 As DataRow = e.DataRow
        dr1("AJZCS") = dr1("ZJCS") + dr1("FJCS")
       
End Select

 回到顶部