try this:
select * from 
(SELECT COURSE_ID, SNUM, to_number(GRADE)as gradenum
FROM BASE_DATA_SCORE NATURAL JOIN BASE_DATA_COURSE
WHERE COURSE_KIND =1 ) A
where A.gradenum<70

解决方案 »

  1.   

    select * from 
    (SELECT COURSE_ID, SNUM, to_number(GRADE)as gradenum
    FROM BASE_DATA_SCORE NATURAL JOIN BASE_DATA_COURSE
    WHERE COURSE_KIND =1 ) A
    where A.gradenum<70
    报告说无效的数字
      

  2.   

    grade字段包含非数字字符。try:
    SELECT COURSE_ID, SNUM, to_number(GRADE)
    FROM BASE_DATA_SCORE NATURAL JOIN BASE_DATA_COURSE
    WHERE COURSE_KIND =1 AND GRADE<'70' and length(grade)=length('70');
      

  3.   

    哈哈我会做了,不过应该是这样:)
    SELECT COURSE_ID, SNUM, to_number(GRADE)
    FROM BASE_DATA_SCORE NATURAL JOIN BASE_DATA_COURSE
    WHERE COURSE_KIND =1 AND GRADE<'70' and length(grade)<=length('70');