两个ID相同时间不同的数据,怎么取出时间最大的那个值

数据库中有两条ID为:1234的数据 但是时间不同,一个是14:50,一个是15:50怎么取出时间最大的条数据。(说明:数据库中还有很多数据,只有部分数据是有两条ID的情况,其他都是一条ID,要怎么才能取出不重复ID的数据)

可用max函数及关联查询即可。

如数据

id               time

1    2015-08-01 00:00:00

1    2015-08-02 00:00:00

2    2015-08-03 00:00:00

2    2015-08-04 00:00:00


执行:

select a.* from è¡¨å a,
(select id,max(time) time from è¡¨å group by id) b
where a.id=b.id and a.time=b.time;

执行结果:

id               time

1    2015-08-02 00:00:00

2    2015-08-04 00:00:00

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-09
SELECT
*
FROM
楼主的表
WHERE
( SELECT
COUNT(1)
FROM
楼主的表 subTopnTest
WHERE
楼主的表.id = subTopnTest.id
AND 楼主的表.时间 < subTopnTest.时间
) < 1
ORDER BY
id, 时间本回答被提问者采纳
第2个回答  2010-10-09
select id,distinct(max(时间)) from table_name group by id order by 时间;
第3个回答  2015-07-20
SELECT
*
FROM
需要的表格
WHERE
( SELECT
COUNT(1)
FROM
需要的表格 subTopnTest
WHERE
需要的表格.id = subTopnTest.id
AND 需要的表格.时间 < subTopnTest.时间
) < 1
ORDER BY
第4个回答  2010-10-09
取时间最大的一条:
select top 1 * from 表 where ID=1234 order by 时间 desc

去不重复的:
select * from 表 A ,(select ID,Count(1) iCount from 表 group by ID)B
where A.ID=B.ID and iCount>1

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网