以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何生成最大值的表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=15077) |
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 8:37:00 -- 如何生成最大值的表 数据库为表A,如何生成表B? 要求:生成分数最高学生的姓名、科目、分数。
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/12 8:51:00 -- 其实相当简单的:
Dim kms As List(of String) = DataTables("表A").GetUniqueValues("","科目")
用SQL应该更加简单,不过我不会。 |
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 8:59:00 -- 这要先加载数据,耗时太长,最好用SQL。 |
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 8:59:00 -- 如果有几百万条数据,这要先加载数据,耗时太长,最好用SQL。
[此贴子已经被作者于2011-12-12 9:11:12编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/12 9:03:00 -- 去有sql高手的论坛问问,例如csdn 有答案后,别忘记告诉我。 |
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 9:37: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编辑过]
|
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 9:52:00 -- 这个可以。谢谢。 |
||||
-- 作者:lihe60 -- 发布时间:2011/12/12 9:53:00 -- 狐友真是人才济济。 [此贴子已经被作者于2011-12-12 9:53:35编辑过]
|
||||
-- 作者:lihe60 -- 发布时间: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”是什么意思? |