sql學生表課程表成績表
Ⅰ SQL中我建立四個表:院系表,學生表,課程表,成績表。要求有以下查詢:查詢平均年齡最大與最小的院系。
我是SQL新手,大家一起交流,對於平均年齡最大的院系
select outer_a.id from (select d1.id as id,(select avg(s1.age) from student s1 where s1.dept_id = d1.id) as avg from dept d1) as outer_a where outer_a.avg = (
select max(avg) from (select d.id,(select avg(s.age) from student s where s.dept_id = d.id) as avg from dept d) as avg_list);
Ⅱ 用SQL對學生表、課程表、成績表進行多表查詢。
CREATE TABLE 選課表
(學號 CHAR(8) REFERENCES 學生表內(學號),
課程編號 CHAR(6) REFERENCES 課程表(課程編號),
成績 smallint)
GO
INSERT INTO 學生表 VALUES('20100101','李丹','女','1993-6-6','管理系容')
GO
SELECT 學號,姓名,所在系
FROM 學生表
GO
SELECT 學生表.學號,姓名
FROM 學生表 JOIN 選課表 ON 學生表.學號=選課表.學號
WHERE 課程編號='A01-02'
GO
SELECT *
FROM 學生表
WHERE 姓名 LIKE '[趙李張]%'
GO
SELECT 課程名稱,COUNT(*) AS 選修總人數
INTO 修課統計
FROM 課程表 JOIN 選課表 ON 課程表.課程編號=選課表.課程編號
GROUP BY 課程名稱
Ⅲ 用SQL創建一個學生表,課程表,學生成績表
第一個表是學生表Student,包含三個欄位,學生id(_id) 和 學生姓名(stu_name)和課程id(les_id)
Create Table [dbo].Student(
stu_id [uniqueidentifier] NOT NULL,
stu_name [nvarchar](425) NOT NULL,
les_id [uniqueidentifier] NOT NULL
)
第二個表課程表Lesson,兩個欄位,課程id(les_id)和課程名稱(les_name)
Create Table [dbo].Lesson(
les_id [uniqueidentifier] NOT NULL,
les_name [nvarchar](425) NOT NULL
)
第三個表學生成績表Score,三個欄位課程id(les_id),學生id(stu_id)和課程得分(les_score)
Create Table [dbo].Score(
les_id [uniqueidentifier] NOT NULL,
stu_id [uniqueidentifier] NOT NULL,
les_score [int] NOT NULL
)
Ⅳ 學生表、成績表、課程表作為數據基礎表,寫出如下SQL語句,謝謝
查詢所有學生的成績信息(無成績的學生也需顯示)
SELECT ST.SNO, ST.SNAME, AVG(GRD.GRADE) AS AVG_GRADE FROM STUDENT ST LEFT JOIN GRADE GRD
ON (ST.SNO = GRD.SNO) GROUP BY ST.SNO, ST.NAME
查詢8002課程的平均分、最高分以及課程名稱,且平均分保留2位小數
SELECT C.CNAME, ROUND(AVG(GRD.GRADE),2) AS AVERAGE_GRADE, ROUND(MAX(GRD.GRADE),2) AS MAX_GRADE FROM COURSE C INNER JOIN GRADE GRD ON (C.CNO = GRD.CNO)
WHERE C.CNO = 8002
Ⅳ 將學生表、成績表、課程表三張表中的數據作為基礎數據,寫出相關SQL語句,謝謝
--查詢所有學生的成績信息(無成績的學生也需顯示)
SELECTSname,Cname,Grade
.Sno=SC.Sno
LEFTJOINCourseONCourse.Cno=SC.Cno
--查詢8002課程的平均分、最高分以及課程名稱,且平均分保留2位小數
SELECTCAST(AVG(Grade)ASNUMERIC(5,2))平均分,MAX(Grade)最高分,Cname課程名稱
FROMCoruseJOINSCONCourse.Cno=SC.Cno
WHERECourse.Cno='8002'
Ⅵ 已知三個關系模式(學生表,課程表,成績表)用SQL語句實現以下內容
CREATE TABLE 選課表
(學號 CHAR(8) REFERENCES 學生表(學號),
課程編號 CHAR(6) REFERENCES 課程表(課程編號),
成績 smallint)
GO
INSERT INTO 學生表 VALUES('20100101','李丹','女','1993-6-6','管理系')
GO
SELECT 學號,姓名,所在系
FROM 學生表
GO
SELECT 學生表.學號,姓名
FROM 學生表 JOIN 選課表 ON 學生表.學號=選課表.學號
WHERE 課程編號='A01-02'
GO
SELECT *
FROM 學生表
WHERE 姓名 LIKE '[趙李張]%'
GO
SELECT 課程名稱,COUNT(*) AS 選修總人數
INTO 修課統計
FROM 課程表 JOIN 選課表 ON 課程表.課程編號=選課表.課程編號
GROUP BY 課程名稱
Ⅶ 解答 SQL 資料庫 學生表 成績表
你答案表的結構有很多問題
Hi我我給你從新寫一個吧
Ⅷ SQL命令 「學生」資料庫中有 「學生表」、「課程表」和 「成績表」。 「學生表」中包含學號、姓名
1、首先在電腦上打開資料庫軟體。然後附加有學生表和成績表的資料庫。
Ⅸ SQL查詢,學生表,課程表,成績表的一個查詢要求如下怎麼寫呢
selects.sid,s.sname,sc.scorefromstudent,course,scwherestudent.sid=sc.sidandcourse.cid=sc.cidandcourse.cname='影視設計';
注意一下,你自己寫的sid和sname中間沒有逗號,到時候一定執行報錯
Ⅹ 資料庫多表查詢,學生表,課程表,成績表
直接將三表關聯查詢就可以了
select b.姓名,c.課程,a.成績
from 成績表 a,學生表 b,課程表 c
where a.學生學號 = b.學號 and a.課程編號 = c.編號 and a.成績 < 60