我想先按推荐指数排序 ,然后再将推荐指数高的再按时间排序 比如,我有推荐指数为: 5,4,3,2,1
我先查出推荐指数高的前4条,将这前四条推荐指数高的再按最新发布时间排序
  

解决方案 »

  1.   

    表名: TIss_Information
    推荐指数列: FRecIndex 
    发布时间列: FIssueOn 
      

  2.   

    SELECT * FROM (
    SELECT * FROM TIss_Information
    ORDER BY FRecIndex  , FIssueOn  )
    WHERE ROMNUM<=4
      

  3.   


    --没看明白,就写了两种
    select *
    from (select * from tb order by 推荐指数 desc,发布时间 desc) where rownum<=4select *
    from (select a.*,row_number() over(order by 推荐指数 desc,发布时间 desc) rn from tb)
    where rn<=4
      

  4.   

    发错了,应该是这样,数据库很多 数据我要查出推荐指数高的,再把高的按最新发布时间排序 取前四条,
    有2中情况
    情况一:
        名称     推荐指数(FRecIndex)          发布时间
          A          5                    2010-7-8 21:00
         B          5                    2010-7-8 07:00
         C          5                    2010-7-8 08:00
         D          5                    2010-7-8 12:00
         E          5                    2010-7-8 20:00
         F          4                    2010-7-8 18:00
         G          4                    2010-7-8 21:00
         H          3                    2010-7-8 06:00
         I          2                    2010-7-8 07:00
    情况一的显示结果(按时间和推荐指数排序)就这样:A,D,C,B
    情况二:
        名称     推荐指数(FRecIndex)          发布时间
          A          5                    2010-7-8 21:00
         B          5                    2010-7-8 07:00
         C          4                    2010-7-8 08:00
         D          3                    2010-7-8  :00
         E          2                    2010-7-8 05:00
         F          1                    2010-7-8 06:00
         H          4                    2010-6-30 12:00
    情况二的显示结果(按时间和推荐指数排序)就这样:A,B,H,C
      

  5.   

    哦,又错了 ,情况一得结果应该是:A,E,D,C,