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

sql查詢姓名和課程名

發布時間: 2023-08-16 10:38:19

資料庫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查詢出有成績不及格的學生的學號,姓名,課程名。

select a.學號 , a.姓名 , b.課程名
from tbStudent a , tbCourse b , tbScore c
where c.成績 < 60 and a.學號 = c.學號 and b.課程號 = c.課程號

❸ 以「registration」資料庫為基礎,寫出完成下面查詢的 SQL 語 句

1、 查詢成績大於80 分的選課情況,包括學號,課號,成績:
SELECT Student.ID, Course.ID, GradeFROM Student, Course, RegistrationWHERE Student.ID = Registration.ID AND Course.ID = Registration.IDAND Grade > 80;

2、查詢所有學生的姓名,性別,年齡:
SELECT Name, Gender, AgeFROM Student;

3、 查詢姓名為「XX 寧」的學生基本信息:
SELECT *FROM StudentWHERE Name = 'XX 寧';

4、 查詢學分鍵物為2分或5分的課程名和學分:
SELECT Name, CreditFROM CourseWHERE Credit IN (2, 5);

5、統計選修了 C03 號課程的學生人數、缺唯敏考學生人數:
SELECT COUNT(*) AS Total, SUM(CASE WHEN Grade IS NULL THEN 1 ELSE 0 END) AS AbsentFROM Student, RegistrationWHERE Student.ID = Registration.ID AND Course.ID = 'C03';

6、 查詢平均成績大於等於 70 分的學生學號和對應平均成績:
SELECT Student.ID, AVG(Grade)FROM Student, Course, RegistrationWHERE Student.ID = Registration.ID AND Course.ID = Registration.IDGROUP BY Student.IDHAVING AVG(Grade) >= 70;

7、 查詢學生的選課情況,包括姓名、課名、成績:
SELECT Student.Name, Course.Name, GradeFROM Student, Course, RegistrationWHERE Student.ID = Registration.ID AND Course.ID = Registration.ID;

8、 查詢與「工業稿山液設計」同在一個系的其他專業信息,包括專業號,專業名:
SELECT Department.ID, Department.NameFROM Department, MajorWHERE Department.ID = Major.ID AND Major.Name = '工業設計'AND Department.ID != (SELECT ID FROM Major WHERE Name = '工業設計');

❹ sql查詢語句的問題,「列出成績大於90的所有學生的姓名、專業、課程名稱、成績」這條語句怎麼寫

可以參考下面的代碼:

select s.姓名, s.專業, sc.成績, c.課程名稱

from 學生基本情況表 s, 成績表 sc, 課程表 c

where s.學號 = sc.學號 and c.課程編號 = sc.課程編號

and sc.成績 > 90

(4)sql查詢姓名和課程名擴展閱讀:

sql語句

刪除列:

Alter table table_name drop column column_name--從表中刪除一列

添加主鍵:

Alter table tabname add primary key(col)

平均:

select avg(field1) as avgvalue from table1

最大:

select max(field1) as maxvalue from table1

❺ 怎麼用SQL的查詢語句列出某同學所有課程的課程名和成績啊,並按成績從低到高排序啊

1、打開Microsoft SQL Server 2012,選中需要查詢所有表的資料庫。