數據庫練習題:學生表(學號,姓名,性別,系部,年齡)選課表(學號,課程號,成績)課程表(課程號,課程名,學分)


數據庫中有如下三個表:

學生表(學號,姓名,性別,系部,年齡)選課表(學號,課程號,成績)課程表(課程號,課程名,學分)

(1)、寫出創建以上三個表的sq語句

(2)、從選課表中查詢所有選課信息,即學號、課程號、成績,並給成績加8分

(3)、從選課表中查詢選修課程號C02且該]課程考試及格的學生的學號

(4)、查找成績介於80和90之間的學生姓名,結果按成績和姓名升序排序

(5)、查找成績高於90分的學生姓名、學號及系別

答案:

-- (1)創建表
create table student(            -- 學生表
    S_no char(9) primary key,           -- 學號 設置主鍵
    S_name char(20),                    -- 姓名
    S_sex char(2),                      -- 性別
    S_department char(20),              -- 系部
    S_age int                           -- 年齡
);
create table course (            -- 選課表
    C_no char(10) primary key,         -- 學號
    C_course char(20),                 -- 課程號
    C_grade char(20)                  -- 成績
);
create table choice (            -- 課程表
    C_course char(9) primary key,      -- 課程號
    C_course_name char(10),            -- 課程名
    C_score int                        -- 學分
);

-- (2)從選課表中查詢所有選課信息,即學號、課程號、成績,並給成績加8分
select S_no, C_course, C_grade=C_grade+8 from course;

-- (3)從選課表中查詢選修課程號C02且該課程考試及格的學生的學號
select C_no, C_course from course;
where C_course='C02' and C_grade>=60;

-- (4)、查找成績介於80和90之間的學生姓名,結果按成績和姓名升序排序
select student.S_name
from course join student on student.S_no=course.C_no
where course.C_grade between 80 and 90
order by course.C_grade, student.S_no;

-- (5)、查找成績高於90分的學生姓名、學號及系別
select student.S_name, student.S_no, student.S_department
from student join course on student.S_no=course.C_no
where course.C_grade>=90;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM