1. 程式人生 > >資料庫練習題:學生表(學號,姓名,性別,系部,年齡)選課表(學號,課程號,成績)課程表(課程號,課程名,學分)

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

資料庫中有如下三個表:

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

(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;