Foxtable(狐表)用户栏目专家坐堂 → 如何生成最大值的表


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

主题:如何生成最大值的表

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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
如何生成最大值的表  发帖心情 Post By:2011/12/12 8:37:00 [只看该作者]

数据库为表A,如何生成表B?

要求:生成分数最高学生的姓名、科目、分数。

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


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/12 8:51:00 [只看该作者]

其实相当简单的:

 

Dim kms As List(of String) = DataTables("表A").GetUniqueValues("","科目")
For Each km As String In kms
    Dim dr As DataRow  = DataTables("表A").Find("科目 = '" & km & "'","分数 desc" )
    output.show(dr("姓名") & ":" & dr("科目") & ":" & dr("分数"))
Next

 

用SQL应该更加简单,不过我不会。


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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 8:59:00 [只看该作者]

这要先加载数据,耗时太长,最好用SQL。

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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 8:59:00 [只看该作者]

如果有几百万条数据,这要先加载数据,耗时太长,最好用SQL。
[此贴子已经被作者于2011-12-12 9:11:12编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/12 9:03:00 [只看该作者]

去有sql高手的论坛问问,例如csdn

有答案后,别忘记告诉我。


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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 9:37:00 [只看该作者]

哪位高手可相助?


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


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2011/12/12 9:40:00 [只看该作者]

select 姓名,科目,分数 from {表A} a where 分数 = (select max(分数) from {表A} where 科目 = a.科目) order by a.科目
[此贴子已经被作者于2011-12-12 9:41:35编辑过]

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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 9:52:00 [只看该作者]

这个可以。谢谢。

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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 9:53:00 [只看该作者]

狐友真是人才济济。

[此贴子已经被作者于2011-12-12 9:53:35编辑过]

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


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2011/12/12 9:55:00 [只看该作者]

以下是引用sgs在2011-12-12 9:40:00的发言:
select 姓名,科目,分数 from {表A} a where 分数 = (select max(分数) from {表A} where 科目 = a.科目) order by a.科目
[此贴子已经被作者于2011-12-12 9:41:35编辑过]

问一下,这个“a”是什么意思?


 回到顶部
总数 46 1 2 3 4 5 下一页