使用GROUP BY得到 极端的记录

来源:互联网 发布:软件商城下载 编辑:程序博客网 时间:2024/05/16 14:43
表:
主叫号码  被叫号码  主叫发起时间 
123456    456789     2007-04-02 16:00:00
654321    111111     2007-04-02 17:00:00
123456    222222     2007-04-02 17:00:00
123456    333333     2007-04-02 18:00:00

我的目的,要得到主叫号码第一次发起的那条记录呢?
我如何使用SQL语句实现呢?
结果
主叫号码  被叫号码  主叫发起时间 
123456    456789     2007-04-02 16:00:00

654321    111111     2007-04-02 17:00:00


SELECT T.*
FROM 表名 AS T
where 主叫发起时间=(select min(主叫发起时间) from 表名 where 主叫号码=T.主叫号码)


--或,取 主叫发起时间 升序排列的第一条

SELECT T.*
FROM 表名 AS T
where 主叫发起时间=(select top 1 主叫发起时间 from 表名 where 主叫号码=T.主叫号码 order by 主叫发起时间 )


多积分记录中 取 时间最大的记录

SELECT * 
FROM teacher_integral as ti
WHERE create_time = (SELECT max(create_time) FROM teacher_integral WHERE tid = ti.tid)

16220 240 1 81502890906
17 1 202202 1 1502894364




原创粉丝点击