sql學生考試成績分析表
A. 解答 SQL 資料庫 學生表 成績表
你答案表的結構有很多問題
Hi我我給你從新寫一個吧
B. 用sql語句建表 表名學生成績表
createtable學生成績表
(
學號回varchar(4)notnull,
課程答號varchar(3)notnull,
成績decimal(4,1),
primarykey(學號,課程號)
)
C. sql查詢學生成績表最高分數
以下這些英文都是學生表的常用的,希望你能看懂
1,查詢選了所有課的學生版
select
sname
from
student
where
snum=(select
sc.snum
from
sc
where
sc.snum=student.snum
group
by
sc.snum
having
count(*)=n)
2.查詢不及格學權生姓名和掛科的科目
select
sname,cname
from
student,sc,course
where
sc.snum=student.snum
and
sc.cnum=course.cnum
and
score<60
3.查詢每個課程選修人數和掛科人數(這個比較復雜)
select
cname,count(不及格)as
選修人數,sum(不及格)as
不及格人數
from(select
cname,case
when
score<60
then
1
else
0
end
as
不及格
from
sc,student,course
where
sc.cnum=course.cnum
and
sc.snum=student.snum)as
abc
group
by
cname
D. 查詢每個學生的各科成績sql語句
1、查詢每個學生的各科成績sql語句:
select a.studentid,a.name,a.sex,v1.score as '語文',v2.score as '數學', v3.score as '英語',v4.score
as 『哲學』, (v1.score+v2.score+v3.score+v4.score)/4 as 『平均成績』 from Stuednt a
left join
(select studentid,score from grade where cid=(select cid from course where cname='語文'))as v1
on a.studentid=v1.studentid
left join
(select studentid,score from grade where cid=(select cid from course where cname='數學'))as v2
on a.studentid=v2.studentid
left join
(select studentid,score from grade where cid=(select cid from course where cname='英語'))as v3
on a.studentid=v3.studentid
left join
(select studentid,score from grade where cid=(select cid from course where cname='哲學'))as v4
on a.studentid=v4.studentid
order by a.studentid
2、sql資料庫介紹:
(1)SQL是Structured Query Language(結構化查詢語言)的縮寫。SQL是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出"做什麼"的命令,"怎麼做"是不用使用者考慮的。
(2)SQL功能強大、簡單易學、使用方便,已經成為了資料庫操作的基礎,並且現在幾乎所有的資料庫均支持SQL。
(3)SQL資料庫的數據體系結構基本上是三級結構,但使用術語與傳統關系模型術語不同。
(4)在SQL中,關系模式(模式)稱為"基本表"(base table);存儲模式(內模式)稱為"存儲文件"(stored file);子模式(外模式)稱為"視圖"(view);元組稱為"行"(row);屬性稱為"列"(column)。
E. 資料庫中有學生屬性表,與學生成績表如下圖所示。按要求寫出SQL語句 表:學生屬性表
這個問題很好解決抄
1查詢數學襲成績優秀(成績)80)的學生的學號
select 學生ID from 學生成績表 where 數學成績>=80
2查詢有掛科學生的姓名
select b.姓名 from 學生成績表 a
left join 學生屬性表 b on a.學生ID=b.學生ID
where (數學成績<60 or 英語成績<60 or 體育成績<60 or C++<60)
3查詢C++成績合格學生的人數
select count(學生ID) from 學生成績表 where C++ >=60
F. sql語句科目表學生表和成績表的查詢
每科的總成績?查詢它干什麼?要查的話這樣查:
SELECT 科目表.KUMUID,KUMUName,SUM(CHENJI) AS SUM_CHENJI,AVG(CHENJI) AS AVG_CHENJI
FROM 科目表,成績表
WHERE 科目表.KUMUID=成績表.KUMUID
GROUP BY 科目表.KUMUID,KUMUName
由於是查每科的總成績和平均分,所以和學生沒有關系,不用關聯學生表
----------------------------------------------------------------
不過我懷疑你是不是想查每個學生的總成績和平均分,是這樣查的:
SELECT 學生表.UID,UName,SUM(CHENJI) AS SUM_CHENJI,AVG(CHENJI) AS AVG_CHENJI
FROM 學生表,成績表
WHERE 學生表.UID=成績表.UID
GROUP BY UID,UName
=========================================================
對於樓主的補充的回答:
你所要的SQL語句我已經寫了,這個查詢由於是查詢每個科目的總成績,所以不需要查詢學生的姓名,所以不應關聯學生表。只需要用成績表關聯科目表(目的是查詢出科目的名稱)。然後直接使用分組匯總(就是用 GROUP BY 子句和SUM、AVG兩個聚合函數實現的)。
分組查詢是一種最基本的查詢,現在的主流資料庫都支持它。所以每一個學習資料庫的人都應該很好的理解它。
G. 如何用sql語句查出學生表成績小於60為不及格60-80為良好80-90為優秀
select name,case when 成績<60 then 不及格 when 成績>=60 and 成績<80 then 良好 when 成績>=0 and 成績<90 then 優秀 end as 成績情況 ,from 表名。
注意,在輸入sql語句的時候,要在英文環境下輸入。否則可能會出現代碼不識別。
H. 資料庫有2張表,一張學生表,一張成績表,查詢某學生的成績,sql語言怎麼寫
連接查詢。根據2張表關聯的欄位查詢,比如學生表有學生ID欄位,成績表如果也有這個版ID,則
select * from [學生表權] inner join [成績表] on [學生表].ID=[成績表].學生ID
mysql和sql server 資料庫中 sql 語言應該都是一樣的,但是函數。。。特有的肯定不一樣的,
sql(結構化查詢語言)語言都是一樣的,你可以網路下sql看看到底什麼意思
I. 求學生表和成績表的sql語句
select t.name,avg(c.score),max(c.score),min(c.score) from t_score c right join t_student t GROUP BY t.student_id,c.item_id
J. 學生表 學科表 成績表 獲取學生成績的sql語句
採用以下思路試試
select,sum([成績])from[學生表]a
leftjoin[成績表]bona.[學號]=b.[學號]
groupbya.[姓名]
請採納!