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

sql中課程表中課程名的類型

發布時間: 2023-05-07 22:26:23

A. sql查詢全部學生都選修的課程的課程號和課程名問題

SELECT
course.cid,
course.cname
FROM
course JOIN study ON (course.cid = study.cid)
GROUP BY
course.cid,
course.cname
HAVING
COUNT(study.sid) = (SELECT COUNT(sid) FROM student);

邏輯:

首先,簡單的把 課程表 與 選修表 關聯
course JOIN study ON (course.cid = study.cid)

然後 ,按照 課程號和課程名 分組
GROUP BY
course.cid,
course.cname

最後, 要求 選修的人數 = 學生總數
HAVING
COUNT(study.sid) = (SELECT COUNT(sid) FROM student)

B. 用SQL語句列出全部學員都選修的課程的課程名和課程號

我的思路是在SC中判斷每門課被選修了多少次,如果被選修次數=學生人數 則認為被所有學生選修。總覺得這個思路不太好,可是又想不出更好的邏輯關系

select CNAME,CNO from c
where cno in (
select cno from sc
group by sno
having count(sno) = (select count(1) from s)
)

C. 用SQL語句怎樣在課程表中,查詢出課程名中含有『數據』的課編號及課程名

SELECT CourseId,CourseName FROM Course WHERE CourseName like '%數據%'

D. 怎麼用sql語句查詢課程表中的最高課時以及課程名稱

select top 1 課時, 課程名稱 from 課程表
order by 課時 desc

E. 用SQL語句實現:學生表、課程表、選課表三張表中的問題:

第一個
select s.sno, s.sname
from student s, sc t
where s.sno = t.sno
and t.cno = (
select c.cno
from couse c
where c.cname = '計算機原理'
);
第二個:
select c.cname
from student s, couse c, sc t
where c.cno = t.cno and t.sno = s.sno and s.sname = '周星馳';
第三個:
select s.sno, s.sname
from student s
where s.sno in (
select t.sno
from sc t
group by t.sno
having count(t.cno) = 5
);
我已經在本地資料庫建表測試過了,如果有什麼問題,可以再聯系我。

F. SQL命令 「學生」資料庫中有 「學生表」、「課程表」和 「成績表」。 「學生表」中包含學號、姓名

1、首先在電腦上打開資料庫軟體。然後附加有學生表和成績表的資料庫。

G. 用SQL語句完成以下操作

1
select * from 學生表 a,班級表 b where a.班級編號=b.班級編號
2
select top 10 * from 班級表
3
select a.姓名,b.課程名稱,c.成績
from 學生表 a,課程表 b,成績表 c where a.學號=c.學號 and b.課程編號=c.課程編號 and a.學號='20050101'
4
select top 10 a.姓名,b.課程名稱,c.成績
from 學生表 a,課程表 b,成績表 c where a.學號=c.學號 and b.課程編號=c.課程編號 and a.學號='20050101'
order by c.成績 desc
5
select top 5 * into 科技學生信息表 from 學生表
6
select a.姓名,b.課程名稱,c.成績
from 學生表 a,課程表 b,成績表 c where a.學號=c.學號 and b.課程編號=c.課程編號
and a.學號='201001002'
and c.成績 between 80 and 90
7
select * from 課程表 where 課程名稱 like '大學%'
8
select a.姓名,a.學號,avg(b.成績) as 平均成績
from 學生表 a,成績表 b where a.學號=b.學號 group by a.姓名,a.學號
9
select a.姓名,a.學號,sum(b.成績) as 總分,count(*) as 課程門數,avg(b.成績) as 平均分
from 學生表 a,成績表 b where a.學號=b.學號 group by a.姓名,a.學號
10
select a.學號,a.姓名,b.成績,b.課程編號
from 學生表 a,成績表 b where a.學號=b.學號

希望你能通過以上的答案,自己弄懂都是什麼意思,over