当前位置: 代码迷 >> Oracle面试 >> 求sql大牛来帮忙!解决方法
  详细解决方案

求sql大牛来帮忙!解决方法

热度:6816   发布时间:2013-02-26 00:00:00.0
求sql大牛来帮忙!!!!!!
假设有这么个表:
htbh dzkje hkrq
001 500 2011-01-01
002 400 2011-06-05
001 600 2011-07-01
002 800 2010-12-12
我想要变成这样的结果,sql应该怎么写啊?
001 600 2011-07-01
001 500 2011-01-01
002 400 2011-06-05
002 800 2010-12-12

------解决方案--------------------------------------------------------
SQL code
--直接上代码不解释,不过看不出来你的 日期按照什么规矩排序,001的乱排呢。。SQL> with t1 as(  2  select '001' htbh, 500 dzkje, '2011-01-01'hkrq from dual union all  3  select '002' htbh, 400 dzkje, '2011-06-05'hkrq from dual union all  4  select '001' htbh, 600 dzkje, '2011-07-01'hkrq from dual union all  5  select '002' htbh, 800 dzkje, '2010-12-12'hkrq from dual union all  6  select '003' htbh, 900 dzkje, '2010-07-07'hkrq from dual union all  7  select '001' htbh, 600 dzkje, '2010-08-09'hkrq from dual union all  8  select '004' htbh, 200 dzkje, '2010-01-26'hkrq from dual union all  9  select '003' htbh, 600 dzkje, '2010-12-12'hkrq from dual union all 10  select '004' htbh, 900 dzkje, '2011-07-12'hkrq from dual) 11  select htbh,dzkje,hkrq 12    from t1 13   order by htbh,hkrq desc;HTB      DZKJE HKRQ--- ---------- ----------001        600 2011-07-01001        500 2011-01-01001        600 2010-08-09002        400 2011-06-05002        800 2010-12-12003        600 2010-12-12003        900 2010-07-07004        900 2011-07-12004        200 2010-01-26已选择9行。SQL>
  相关解决方案