现在有一张表的数据是这样子的
dz time data
北京 2011-10-12 23:58 78
北京 2011-10-12 23:50 78
广州 2011-10-12 23:53 733
广州 2011-10-12 23:57 783
北京 2011-10-11 23:59 80
北京 2011-10-11 23:50 78
广州 2011-10-11 23:30 733
广州 2011-10-11 23:45 45现在需要查询出某个城市 每天时间最大的一条记录,(也就是说最接近凌晨的一条记录),如查询出北京的数据如下格式 dz time data
北京 2011-10-12 23:58 78
北京 2011-10-11 23:59 80
请大家帮帮忙,谢谢啦
dz time data
北京 2011-10-12 23:58 78
北京 2011-10-12 23:50 78
广州 2011-10-12 23:53 733
广州 2011-10-12 23:57 783
北京 2011-10-11 23:59 80
北京 2011-10-11 23:50 78
广州 2011-10-11 23:30 733
广州 2011-10-11 23:45 45现在需要查询出某个城市 每天时间最大的一条记录,(也就是说最接近凌晨的一条记录),如查询出北京的数据如下格式 dz time data
北京 2011-10-12 23:58 78
北京 2011-10-11 23:59 80
请大家帮帮忙,谢谢啦
FROM (SELECT dz,
time,
data,
ROW_NUMBER ()
OVER (PARTITION BY dz, TRUNC (time, 'dd')
ORDER BY time DESC)
rn
FROM table_name)
WHERE rn = 1
ORDER BY dz, time --不需要就去掉
select t.dz , t.time , max(date) date from tb t where dz = '北京' group by t.dz , t.time--如果你的time,data是一个字段,假设是time
select t.dz , max(time) time from tb t where dz = '北京' group by t.dz , to_char(t.time,'YYYY-MM-DD')
time,
data
from tb
where time in(select max(time)
from tb
where dz = 'beijing')
;
select t.dz , t.time , max(date) date from tb t where dz = '北京' group by t.dz , t.time