學生表課程表成績表er圖
❶ 根據學生表,課程表和成績表,查詢學生的學號,姓名,課程號,課程名和分數。(多表查詢
直接將三表關聯查詢就可以了 select b.姓名,c.課程,a.成績 from 成績專表 a,學生表屬 b,課程表 c where a.學生學號 = b.學號 and a.課程編號 = c.編號 and a.成績 < 60
❷ 資料庫多表查詢,學生表,課程表,成績表
直接將三表關聯查詢就可以了
select b.姓名,c.課程,a.成績
from 成績表 a,學生表 b,課程表 c
where a.學生學號 = b.學號 and a.課程編號 = c.編號 and a.成績 < 60
❸ 根據學生表和課程表與成績登記表的關系來做一個成績登記表用SQL環境下完成。
--1.
createtablescs
(snointnotnull,
cnointnotnull,
scoreint)
--2.
altertablescsadddtdatetime;
--3
altertablescsaddconstraintpk-scprimarykey(sno,cno);
❹ 用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對學生表、課程表、成績表進行多表查詢。
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查詢,學生表,課程表,成績表的一個查詢要求如下怎麼寫呢
selects.sid,s.sname,sc.scorefromstudent,course,scwherestudent.sid=sc.sidandcourse.cid=sc.cidandcourse.cname='影視設計';
注意一下,你自己寫的sid和sname中間沒有逗號,到時候一定執行報錯
❼ 某學校教學管理資料庫jxgl.dbc中有三個表:學生表,課程表和成績表,內容如下: 學生表:
(1)創建學生表、課程表和成績表。具體要求:學生表中學號為主索引,出生日期默認值為1988-09-01;課程表中課程號為主索引,學分不能為空;成績表中學號是外索引與學生表建立關系,課程號是外索引與課程表建立關系,成績的要求是在0-100之間。
createtable 學生表
(學號intnotnullprimarykey,
姓名varchar(30)notnull,
性別varchar(4)notnull,
出生日期datetimenotnulldefault 1988-09-01
)
go
createtable 課程表
(課程號char(6)notnullprimarykey,
課程名varchar(30)notnull,
學分char(10)notnull
)
go
createtable 成績表
(學號 學生表(學號),
課程號char(6) 課程表(課程號),
成績 tinyintconstraint 成績_ckcheck (成績>=0 and 成績<=100 )
)
(2)通過insert into命令向各表中輸入記錄(按照所給表的內容)
insert into 學生表values (10001,'張娟娟','女','1987-09-01')
insert into 學生表values (10002,'李斌','男','1988-03-01')
insert into 學生表values (10003,'王亮晶','女','1986-05-04')
insert into 學生表values (10004,'成果果','女')
insert into 課程表values ('K01','VFP程序設計','3.5')
insert into 課程表values ('K02','計算機文化基礎','2')
insert into 成績表values (10001,'K01 ','85')
insert into 成績表values (10001,'K02 ','90')
insert into 成績表values (10002,'K01 ','88')
insert into 成績表values (10002,'K02 ','92')
insert into 成績表values (10003,'K01 ','90')
insert into 成績表values (10003,'K02 ','91')
insert into 成績表values (10004,'K01 ','76')
insert into 成績表values (10004,'K02 ','87')
(3)查詢「VFP程序設計」課程的學號和成績並按降序輸出。
select 課程表.課程名,成績表.學號,成績表.成績from 成績表
join 課程表on 成績表.課程號=課程表.課程號
where 課程表.課程名='VFP程序設計'
orderby 成績表.成績desc
(4)查詢「成果果」的學號和成績。
select 學生表.姓名,成績表.學號,成績表.成績from 成績表
join 學生表on 成績表.學號=學生表.學號
where 學生表.姓名='成果果'
(5)查詢「張娟娟」的學號和出生日期。
select 學號,姓名,出生日期from 學生表where 姓名='張娟娟'
(6)查詢課程號為「K01」的成績。
select 課程號,成績from 成績表where 課程號='K01'
(7)查詢「王亮晶」的「計算機文化基礎」成績。
select 學生表.姓名,課程表.課程名,成績表.成績from 成績表
join 課程表on 成績表.課程號=課程表.課程號
join 學生表on 學生表.學號=成績表.學號
where 課程表.課程名='計算機文化基礎'and 學生表.姓名='王亮晶'
❽ 將學生表、成績表、課程表三張表中的數據作為基礎數據,寫出相關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'
❾ 使用SQI語句創建三張表(學生表,課程表和成績表)欄位分別是(學號,姓名,年齡,性別,系部,課程號
1、select 姓名 from 學生表 where 系別 = '計算機系'; 2、select 學號 from 學生選課專表 where 成績 < 60 ; 3、select 學號,成績 from 學生選課表 where 課程屬號=1; 4、select 學生表.姓名,學生選課表.課程號,學生選課表.成績 from 學生表,學生選課表 where 學生表.學號 = 學生選課表.學號; 5、select 姓名,年齡,性別 from 學生表 where 年齡 > (select 年齡 from 學生表 where name = '李明');
❿ 有學生表,學科表,成績表三張表,查詢每個學生的所有學科加起來的總成績
我覺得這種情況下你可以用那個統計表進行計算。