Oracle 中没有order by,但我要对成绩进行排序要怎么弄?谢谢

解决方案 »

  1.   

    oracle中怎么会没有order by。。
    select * from table1 order by score
      

  2.   

    orale 中没有order by,是什么意思?如果是sql中没有写的话,你加上order by语句就好了。还有就是有些应用程序拿到数据库数据之后也有方法进行排序的。
      

  3.   

    select * from STUDSCOREINFO
    where STUDNO IN(SELECT STUDNO FROM STUDSCOREINFO
    GROUP BY STUDNO ORDER BY STUDSCORE DESC) WHERE rownum <= 5
    AND STUDNO LIKE '20010505%'第 3 行出现错误:
    ORA-00907: 缺失右括号为什么会出这个错误?明明没少括号
      

  4.   

    不好意思,上面多写了个where
    select * from STUDSCOREINFO
    where STUDNO IN(SELECT STUDNO FROM STUDSCOREINFO
    GROUP BY STUDNO ORDER BY STUDSCORE DESC) AND rownum <= 5
    AND STUDNO LIKE '20010505%'第 3 行出现错误:
    ORA-00907: 缺失右括号
      

  5.   

    ORDER BY 子句 不要放在子查询中,把ORDER BY子句放在整个句子的最后
      

  6.   

    那样不行啊,问题是这样的“在学生成绩信息表(StudScoreInfo)中查询学号为20010505 开头名列前5 名的学生信息”
      

  7.   

    Quote=引用 7 楼 binzai325 的回复:]
    那样不行啊,问题是这样的“在学生成绩信息表(StudScoreInfo)中查询学号为20010505 开头名列前5 名的学生信息”
    [/Quote]
    SELECT * FROM 
    (SELECT * FROM studscoreinfo WHERE studno LIKE '20010505%' ORDER BY studscore DESC)
    WHERE ROWNUM < 6;[
      

  8.   

    select * from STUDSCOREINFO
    where STUDNO IN(SELECT STUDNO FROM STUDSCOREINFO
    GROUP BY STUDNO ORDER BY sum(STUDSCORE) DESC) AND rownum <= 5
    AND STUDNO LIKE '20010505%'分组了却没有聚合,所以出错
      

  9.   

    oracle中怎么没有order by 
      

  10.   

    还有按你的需要,外层的两个条件不能放在一起,否则一定会返回5行
    select * from STUDSCOREINFO 
    where STUDNO IN(select studno from(
      SELECT STUDNO FROM STUDSCOREINFO 
      GROUP BY STUDNO ORDER BY sum(STUDSCORE) DESC) where rownum <= 5 )
    where STUDNO LIKE '20010505%' 
      

  11.   

    SELECT *
      FROM (SELECT *
              FROM STUDSCOREINFO
             WHERE STUDNO LIKE '20010505%'
             ORDER BY STUDSCORE DESC)
     WHERE ROWNUM < 6;