安阳宠物网

如何取得分组中某个字段为最大值的那些记录

    发布时间:2019-07-07 11:09

    select 字段1,字段3,max(字段3之计数) from 表 group by 字段1,字段3

    ------
    哦,你字段3已不一样

    SELECT 字段1,
    Max(select top 1 字段3 from 表 where 字段1 = 表1.字段1 order by 字段3之计数 desc),
    max(字段3之计数)
    from 表 憨福垛核艹姑讹太番咖as 表1
    group by 字段1

    是不是有点复杂,但绝对可用 :)

    我暂时也想不出更好的方法了
    select * from 表 where 字段3之计数 in (select max(字段3之计数) from 表 group by 字段1)
    肯定是错误的

    回复:

    select *
    from 表名 A,
    (select 种类,max(更新时间) as 最后更新 from 表名 group by 种类) B
    where A.种类=B.种类
    and A.更新时间=B.最后更新

    上面语句保证达到你的要求,但不一定最优。

    回复:

    先查出每分钟最大的值,然后再查出所有等于最大值的记录:

    select * from 表 where 字段3之计数 in (select max(字段3之计数) from 表 group by 字段1)

    这样应该就可以了

    楼主,我建了个表测试了下:
    create table tablenew (
    column1 datetime,
    column3 int,
    num3 int
    )

    insert into tablenew(column1,column3,num3) values('2008-6-24 8:20:00','102','3')
    insert into tablenew(column1,column3,num3) values('2008-6-24 8:20:00','103','24')
    insert into tablenew(column1,column3,num3) values('2008-6-24 8:20:00','105','1')
    insert into tablenew(column1,column3,num3) values('2008-6-24 8:21:00','102','20')
    insert into tablenew(column1,column3,num3) values('2008-6-24 8:21:00','103','37')
    insert into tablenew(column1,column3,num3) values('2008-6-24 8:21:00','106','1')

    select * from tablenew where num3 in (select max(num3) from tablenew group by column1)

    结果:
    column1 column3 num3
    2008-06-24 08:20:00.000 103 24
    2008-06-24 08:21:00.000 103 37

    完全没问题
    你说的全部显示出来了,我想可能是因为NULL的原因,
    当in()的括号中有NULL的值时,就会显示所有的值,这时in这个过滤条件就无效了。

    还有就是,我上面这样写是有两个条件才能得到正常的结果:
    1、最大值不为NULL(有的话要加条件过滤)
    2、最大值不能重复(重复的话会列出所有等大的行)

    还有问题可发消息给我

    回复:

    select * from 表 where (字段1,字段3之计数) in (select 字段1,max(字段3之计数) from 表 group by 字段1)

    回复:

    调用max函数

    回复:

    type=b:
    select * from test a where a.updatetime=(select max(b这个题目真虎人.updatetime) from test b where a.type)

    呵呵 你试一下吧,我还专门建了个表给你做的

    回复:


    1,只有一条记录。
    方法二,Max()
    Select Max(字段名) As AAAA From 表名
    返回的记录集:
    利用SQL 的函数,首记录的该字段就是最大值,按照该字段降序排列方法一、一个字段AAA

    回复:

    select 字段3,max(字段3之计数) fr憨福垛核艹姑讹太番咖om 表 group by 字段3
    将查询的结果生成一个表,
    再链接该表和原表,应该就可以得到查询的结果了.

    回复:

    select max(字段3之计数) from 表 group by 字段3

    回复:

    select * from biao group by zl having max(gxsj)
    你试试,不保证能用

    上一篇:手机下载电视剧在电脑无法播放 下一篇:无锡滨湖区周新古镇和别的古镇不一样他有他的风格,不知道附近有什么酒店。。。求推荐。。

    返回主页:安阳宠物网

    本文网址:http://0372pet.cn/view-24985-1.html
    信息删除