當前位置:首頁 » 編程語言 » sql查詢學號姓名系
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql查詢學號姓名系

發布時間: 2023-03-07 01:35:02

sql資料庫中查詢選修了所有課程的學生的學號和姓名及選修門數

所有離開了數據結構(表結構)的SQL語句都是白搭!
先假設數據結構為
學生表(學號 主鍵或設有唯一索引,姓名,性別)
課程表(課程號 主鍵或設有唯一索引,課程名)
選課表(課程號,學號)-- 欄位「課程號」和「學號"設有雙欄位唯一索引
查詢出選修了所有課程的學生的學號、姓名和選修門數:
select a.學號,b.姓名,a.cnt as 選修門數 from
(select 學號,count(1) as as cnt from 選課表 group by 學號
having count(1)=(select count(1) from 課程表)) a,
學生表 b where a.學號=b.學號;

⑵ SQL語句查詢每個學生的學號、姓名、平均成績、最高成績和最低成績

select 學生表.學號,學生表.姓名,
average(成績表.成績) as 平均成績,
max(成績表.成績) as 最高成績,
min(成績表.成績) as 最低成績
from 學生表 left join 成績表 on 學生表.學號=成績表.學號
order by 學生表.學號
成績表可換成語文、數學、英語等,查詢結果就是各個學生相應課程的平均成績、歷史最高成績、歷史最低成績.

⑶ 用 SQL 語言實現下列題目:(1)查詢「計算機系」學生的信息,包括學號,姓名

試試,SELECT 學號,姓名 FROM 你的表 WHERE 系別='計算機系'

⑷ SQL查詢所有學生的學號,姓名和性別,做完了我給高分

給我每個表的結構和關聯關聯,我給你做,保證99.99999%滿分

⑸ 資料庫SQL語句中 查詢選修了全部課程的學生的學號和姓名 理解

樓主別著急!
為好理解我們先從這條SQL語句所要實現的功能入手。
功能:查出選修了全部課程的學信息。那麼SQL在查詢數據的時候的遍歷每一個學生信息。判斷該學生是否滿足條件。
1
如果存在這么一條Course記錄A(暫命名為A),
則不選擇該學生。否則該學生就被查詢出來
2
那麼記錄A,是怎麼查出來的呢?A查出的條件是:不存在SC記錄B,只要不存在B,就可查出A
3
那麼B記錄是什麼?B記錄是選課信息表,根據學號和課程號可查出記錄B
如果B為空(該學生有沒有選的課程)也就是不存在,則A就有一條記錄,根據規則2可知:因為有A,所以該學生信息將不被輸出。
如果在SC中每一個課程編號和該學生編號為條件都能夠查出一條記錄B(也就是該學生選修了全部課程),所以A記錄不存在,則輸出該學生的信息。
也就是在選課表中,如果學生選了全部課程(也就是滿足SELECT
*
FROM
SC
WHERE
Sno=
Student.Sno
AND
Cno=
Course.Cno)始終存在,當然,課程編號是任意的)。那麼就輸出該學生的信息。你不要為理解這條SQL而忘記了它本身是要做什麼.
帶著SQL的目的(要實現的功能)去理解就好了。

⑹ 怎樣用sql語句查詢選修了3門及以上課程的學生學號,姓名,選修的課程數

SELECT學號FROM選課表GROUPBY學號HAVINGCOUNT(*)>=3