2015-01-08 1 views
-2

Вот моя колонкаЯ хочу, чтобы генерировать marksheet содержащего процент, стандарт ранга мудрого и деление мудрого в базе данных оракула

create table exam_details(
     Stud_id varchar2(50), 
     Stud_course_id Number, 
     Stud_div char, 
     Stud_Sub_id Number, 
     Stud_Marks Number, 
     Sub_total_Marks Number, 
     Exam_id Number, 
     Exam_date Date 
     ); 

и контент для дб

 insert into exam_details values ('1A1',1,'A',1,55,100,1,'2-jan-2015'); 
     insert into exam_details values ('1A1',1,'A',2,65,100,1,'3-jan-2015'); 
     insert into exam_details values ('1A1',1,'A',3,72,100,1,'5-jan-2015'); 


     insert into exam_details values ('1B1',1,'B',1,45,100,1,'2-jan-2015'); 
      insert into exam_details values ('1B1',1,'B',2,65,100,1,'3-jan-2015'); 
      insert into exam_details values ('1B1',1,'B',3,58,100,1,'5-jan-2015'); 

     insert into exam_details values ('2A1',2,'A',1,75,100,1,'2-jan-2015'); 
      insert into exam_details values ('2A1',2,'A',2,65,100,1,'3-jan-2015'); 
     insert into exam_details values ('2A1',2,'A',3,82,100,1,'5-jan-2015'); 

Я пытался, но я получаю приведет лишь к

select stud_id, 
    RANK() OVER(ORDER BY stud_marks DESC) AS "Rank" 
from exam_details; 
+0

'' 2-jan-2015'' не является 'date', это строковый литерал. Используйте 'to_date', чтобы преобразовать его в' date', иначе ваши инструкции 'insert' бесполезны. –

+0

спасибо, но у меня есть только фокус только по делению мудрым помечаемым и процентным мудрым знакам, и я пробовал на oracle 10g –

+0

Если вы не отредактируете свои вставки, никто не сможет использовать ваш тестовый пример. –

ответ

1

Может быть, это одно:

select stud_id, Stud_div, 
    RANK() OVER(ORDER BY stud_marks DESC) AS Rank_all, 
    RANK() OVER(PARTITION BY Stud_div ORDER BY stud_marks DESC) AS Rank_div 
from exam_details; 
+0

Я хочу создать простой отчет, содержащий ранг и процент учащихся –

 Смежные вопросы

  • Нет связанных вопросов^_^