分组查询同时需要排序,可是要命oracle不自动排序。
我只能写出这样的语句,不知道怎么order by:
select biaoti,id,xiaotu from sportnews ,(select leibie   from sportnews group  by leibie)  where  tuijian=1 and rownum<=7救我!

解决方案 »

  1.   

    select biaoti,id,xiaotu from sportnews   where  tuijian=1 and rownum<=7
    group by biaoti,id,xiaotu 
    order by biaoti,id,xiaotu 
      

  2.   

    select biaoti,id,xiaotu from sportnews ,(select leibie   from sportnews group  by leibie)  where  tuijian=1 and rownum<=7
    不能这么写的.后面集和前面表没有任何的关联?说说你的具体需求吧,根据需要.而且你是想先选七行再排序还是先排序再选其行?
      

  3.   

    问题是这样的.
    是一个新闻发布系统,新闻类别(leibie),内容(biaoti,neirong等字段)都在一个表格里(sportnews).用0\1代表是否推荐(tuijian).
    要求从每个类别(leibie)里取出一条最近的tuijian=1的记录.
    不知道各位高手是否能理解我的意思啊!
      

  4.   

    CREATE TABLE USRSZZZ.T1
    (
        LEIBIE                         CHAR(1),
        BIAOTI                         VARCHAR2(10),
        NEIRONG                        VARCHAR2(10),
        TUIJIAN                        CHAR(1),
        UDATE                          DATE
    )
    /select leibie ,biaoti,neirong,udate 
    from t1 
    where (leibie,udate) in
    (select leibie,max(udate) as udate
    from t1 
    where tuijian='1'
    group by leibie)
    order by leibie
      

  5.   

    where 与GROUP BY 能用在一条语句中吗??