25 12
发新话题
打印

[DB] SQL文求助!

本主题由 admin 于 2008-6-10 11:45 分类

SQL文求助!

假设表t有两个字段 a, b
a有n种情况: a1,a2,.....an
求a的每个不同值情况下,b的最大值

也就是每个a字段对映了很多b字段,把b中最大的找出来

最终结果为n条记录, 内容为a字段的n种情况,以及其对应的b的最大值


当然用for循环,多次执行sql文是能实现,但是感觉很傻地说。。。。
不要在我面前说英语,OK?

TOP

简单的group by就可以做到。

select a, max(b) from X
group by a;
Life is like a box of chocolates: you never know what you're gonna get.

TOP

如果还有其他字段的话:
复制内容到剪贴板
代码:
select A.a,A.b,A.c from yourtable A
inner join (select a, max(b) as bb from yourtable group by a) B on A.a=B.a and A.b = B.bb
or

select * from yourtable A no exists (select * yourtable where   a=A.a   and   b>a.b)

TOP

嗬嗬,抱歉

我发完帖子,就想起来了,正想回来删帖子呢。居然已经回答了,赫赫。
不要在我面前说英语,OK?

TOP

别删了,还没看明白呢——

干吗作出这些咚咚,真TMD烦

TOP

引用:
原帖由 admin 于 2008-6-9 20:19 发表
如果还有其他字段的话:

select A.a,A.b,A.c from yourtable A
inner join (select a, max(b) as bb from yourtable group by a) B on A.a=B.a and A.b = B.bb

or

select * from yourtable A no ex ...
问个非常傻的,书上写的都是用大写,你这里用的是小写,可以吗?

TOP

データテーブルとデータセットの違いは何ですか?

能给我举个汉语的例子吗?谢谢

TOP

引用:
原帖由 007 于 2008-6-9 21:00 发表


问个非常傻的,书上写的都是用大写,你这里用的是小写,可以吗?
SQL文不区分大小写,所以没问题。
言寡尤,行寡悔。

TOP

引用:
原帖由 清风jacky 于 2008-6-9 21:32 发表

SQL文不区分大小写,所以没问题。
ok, xiexie

TOP

我也学习了一下。以前用过MYSQL
有的语句没有用过。
Be Simple,Be focus

TOP

据最新研究发现:dataset,set嘛,说的就是一组数据。这个可以肯定。

Table呢,还在研究,书面上看,应该是很多组数据组成的表。

现在,又有了进一步的疑问,dataset里面可以包含datatable吗?有知道的吗?谢谢!

TOP

引用:
原帖由 雪娃 于 2008-6-10 11:07 发表
我也学习了一下。以前用过MYSQL
有的语句没有用过。
这语句,怎么就像用英语写作文一样呀?当然还得讲逻辑。

我们这,用的最好的小孩儿,灰常得帅,就是有白头发——

TOP

引用:
原帖由 007 于 2008-6-10 11:52 发表
据最新研究发现:dataset,set嘛,说的就是一组数据。这个可以肯定。

Table呢,还在研究,书面上看,应该是很多组数据组成的表。

现在,又有了进一步的疑问,dataset里面可以包含datatable吗?有知道的吗 ...
一般程序员打交道最多的就是table,很少听说dataset。

数据库database中有很多table,很多user,某些user可以用操作某些table而已。

TOP

引用:
原帖由 admin 于 2008-6-10 12:01 发表



一般程序员打交道最多的就是table,很少听说dataset。

数据库database中有很多table,很多user,某些user可以用操作某些table而已。
嗯,我过两天不明白也得弄明白,等我在研究两天,肯定会明白。

但,有些东西,太抽象了,别说日语,你用汉语跟我说,我都听不懂——郁闷的想哭——

TOP

回复 #14 007 的帖子

table是数据库中最基本的数据结构,SQL文是对于table进行的各种操作。
言寡尤,行寡悔。

TOP

回复 #12 007 的帖子

为什么说这句话像英文?
MYSQL是通过sql文操作数据库的软件
我那句话写错了吗

我不是很懂  你在看sql时能看到dataset吗 dataset 应该在c#里是一种控件 c#我也没有用过 但是简单看了看 在dataset里面 是可以设置table的 属于其中的一个数据属性

你若用C#的话 和sql还不一样
你在看什么书
我很想知道
而且 不能着急 总有都明白的一天的
Be Simple,Be focus

TOP

引用:
原帖由 雪娃 于 2008-6-10 13:39 发表
为什么说这句话像英文?
MYSQL是通过sql文操作数据库的软件
我那句话写错了吗

我不是很懂  你在看sql时能看到dataset吗 dataset 应该在c#里是一种控件 c#我也没有用过 但是简单看了看 在dataset里面 是可 ...
我不是说,你说的话象英文,我是说,那个SELECT文,运用各种介词,我没学过SQL但我看了之后,我知道他要干什么,简直就是考察英语介词的用法,不过看着看着,偶就晕鸟——

您忒牛拉——我现在用的就是C#。我刚才又去问别人了,看来,dataset,就像你说的,是c#里是一种控件,里面可以有table。谢谢啦——

TOP

>MYSQL是通过sql文操作数据库的软件

mysql是数据库的一种,其他还有sqlserver,oracle,postgresql ,db2等等。

他们都是关系型数据库,使用sql文,但是又不是完全一样的sql文。

TOP

引用:
原帖由 admin 于 2008-6-10 14:35 发表
>MYSQL是通过sql文操作数据库的软件

mysql是数据库的一种,其他还有sqlserver,oracle,postgresql ,db2等等。

他们都是关系型数据库,使用sql文,但是又不是完全一样的sql文。
你最推崇的rails呢?怎么个好法?

TOP

引用:
原帖由 007 于 2008-6-10 14:39 发表


你最推崇的rails呢?怎么个好法?
rails是使用ruby语言的一个web开发框架,特点是:简洁优美。

TOP

 25 12
发新话题