以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  从统计表中,获取需要的统计行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=102042)

--  作者:qwz405
--  发布时间:2017/6/12 13:46:00
--  从统计表中,获取需要的统计行
老师,您好。
我要获取月打卡数量最多的几个人,请老师给个方法。

我现在的思路是先分组统计,再取TOP *值,但是统计表是不能用select获取的,所以行不通。


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

先用分组统计,获取下面的统计表:
再取前2名:----(此处行不通)
 S elect  T O P 2 * FR O M {统计表1} ORDER BY 打卡次数 D e sc

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



[此贴子已经被作者于2017/6/12 13:51:01编辑过]

--  作者:有点色
--  发布时间:2017/6/12 14:12:00
--  

参考代码

 

select top 2 第一列, count(*) as 打卡次数 from {表A} group by 第一列 order by count(*) desc


--  作者:qwz405
--  发布时间:2017/6/12 16:36:00
--  
老师,如果要将获得的统计表用图表显示出来,代码要怎么写?

msgbox(2) --> msgbox(3)错误:未将对象引用设置到对象的实例。

    \'Dim Chart As WinForm.Chart \'定义一个图表变量
    Dim Chart As New ChartBuilder
    Dim Series As WinForm.ChartSeries \'定义一个图系变量
    Dim t As Table = Tables("统计表1") \'定义一个变量t引用数据表
    \'Chart= e.Form.Controls("Chart1") \' 引用窗口中的图表
    \'Chart.SeriesList.Clear() \'清除图表原来的图系
    Chart.PrintWidth = 140
    Chart.PrintHeight = 100
    Chart.VisualEffect = True
    Series = Chart.SeriesList.Add() \'增加一个图系
    Series.Length = t.Rows.Count \'图系的数据点数等于表的行数
    Msgbox(1)
    For i As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置
        Msgbox(2)
        Series.X(i) = t.Rows(i)("姓名") \'指定水平坐标
        Series.Y(i) = t.Rows(i)("打卡次数") \'指定垂直坐标
        Msgbox(3)
    Next
    
    Msgbox(4)
    wb.AddPageTitle("","ph1","FoxUI")
    Msgbox(5)
    wb.InsertHTML("<img width=\'100%\' src=\'" & wb.ImageToBase64(Chart.Image) &  "\'/>")



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

--  作者:有点色
--  发布时间:2017/6/12 16:44:00
--  

    For i As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置
        Msgbox(2)
        Series.X(i) = i\'指定水平坐标
        Series.Y(i) = val(t.Rows(i)("打卡次数")) \'指定垂直坐标
        Chart.AxisX.SetValueLabel(i, t.Rows(i)("姓名")) \'指定字符表示
    Next
    Chart.AxisX.AnnoWithLabels = True \'启用字符标示

 

http://www.foxtable.com/webhelp/scr/0968.htm