|
|
@ -1,14 +1,12 @@
|
|
|
|
|
|
|
|
#encoding=UTF-8
|
|
|
|
DELIMITER $$
|
|
|
|
class SelectMemberScore < ActiveRecord::Migration
|
|
|
|
|
|
|
|
def up
|
|
|
|
|
|
|
|
sql = ("
|
|
|
|
|
|
|
|
|
|
|
|
CREATE
|
|
|
|
CREATE
|
|
|
|
/*[DEFINER = { user | CURRENT_USER }]*/
|
|
|
|
|
|
|
|
PROCEDURE `member_score`(IN courseid INT)
|
|
|
|
PROCEDURE `member_score`(IN courseid INT)
|
|
|
|
/*LANGUAGE SQL
|
|
|
|
|
|
|
|
| [NOT] DETERMINISTIC
|
|
|
|
|
|
|
|
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
|
|
|
|
|
|
|
|
| SQL SECURITY { DEFINER | INVOKER }
|
|
|
|
|
|
|
|
| COMMENT 'string'*/
|
|
|
|
|
|
|
|
BEGIN
|
|
|
|
BEGIN
|
|
|
|
|
|
|
|
|
|
|
|
CREATE TEMPORARY TABLE IF NOT EXISTS course_teachers (
|
|
|
|
CREATE TEMPORARY TABLE IF NOT EXISTS course_teachers (
|
|
|
@ -61,13 +59,12 @@ CREATE
|
|
|
|
|
|
|
|
|
|
|
|
INSERT INTO course_teachers (SELECT members.user_id FROM members WHERE members.user_id NOT IN (SELECT student_id FROM students_for_courses WHERE course_id = courseid));
|
|
|
|
INSERT INTO course_teachers (SELECT members.user_id FROM members WHERE members.user_id NOT IN (SELECT student_id FROM students_for_courses WHERE course_id = courseid));
|
|
|
|
|
|
|
|
|
|
|
|
#查出所有的学生
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INSERT INTO mems (id, user_id, course_id, created_on, course_group_id)
|
|
|
|
INSERT INTO mems (id, user_id, course_id, created_on, course_group_id)
|
|
|
|
(SELECT members.id, members.user_id, members.course_id, members.created_on, members.course_group_id
|
|
|
|
(SELECT members.id, members.user_id, members.course_id, members.created_on, members.course_group_id
|
|
|
|
FROM members WHERE course_id = courseid AND members.user_id NOT IN (SELECT id FROM course_teachers));
|
|
|
|
FROM members WHERE course_id = courseid AND members.user_id NOT IN (SELECT id FROM course_teachers));
|
|
|
|
|
|
|
|
|
|
|
|
# 查出所有的学生列表及其作业
|
|
|
|
|
|
|
|
INSERT INTO mem_home (id, user_id, course_id, created_on, course_group_id,home_id)
|
|
|
|
INSERT INTO mem_home (id, user_id, course_id, created_on, course_group_id,home_id)
|
|
|
|
(SELECT members.id, members.user_id, members.course_id, members.created_on, members.course_group_id, homework_attaches.id
|
|
|
|
(SELECT members.id, members.user_id, members.course_id, members.created_on, members.course_group_id, homework_attaches.id
|
|
|
|
FROM members, homework_attaches WHERE course_id = courseid
|
|
|
|
FROM members, homework_attaches WHERE course_id = courseid
|
|
|
@ -92,6 +89,12 @@ CREATE
|
|
|
|
UPDATE mems, scores SET mems.score = scores.score WHERE mems.user_id = scores.user_id;
|
|
|
|
UPDATE mems, scores SET mems.score = scores.score WHERE mems.user_id = scores.user_id;
|
|
|
|
|
|
|
|
|
|
|
|
SELECT * FROM mems ORDER BY score DESC;
|
|
|
|
SELECT * FROM mems ORDER BY score DESC;
|
|
|
|
END$$
|
|
|
|
END;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
")
|
|
|
|
|
|
|
|
execute(sql)
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
DELIMITER ;
|
|
|
|
def down
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|