sql課程表默認值設置
『壹』 用SQL語句實現:學生表、課程表、選課表三張表中的問題:
用子查詢
select 姓名
from 學生,選課,課程
where 學生.學號=選課.學號 and 選課.課程號=課程.課程號 and 課程.課程名='資料庫'
and 學生.學號 in
(select 學生.學號
from 學生,選課,課程
where 學生.學號=選課.學號 and 選課.課程號=課程.課程號 and 課程.課程名='操作系統';
}
『貳』 SQL語句的一道題 三個基本表:學生表(Student)、課程表(Course)、學生選課表(SC)
1. select * from SC
2. select Sname,Sage from Student where Sdept = '計算機'
3. select Sno,Cno,Grade from SC where Grade >= 70 and Grade <= 80
4. select Sname,Sage from Student where Sage between 18 and 20 and Ssex = '男'
5. select top 1 Grade from SC where Cno = 'C01'
6. select max(Sage),min(Sage) from Student
7. select Sdept,sum(Sno) from Student group by Sdept
8. select course.Cname,sum(sc.Sno),max(Grade) from SC
join studet on Student.Sno = SC.Sno
join Course on Course.Cno = SC.Cno
group by course.cname,max(grade)
9. select sum(Cno),avg(Grade) from SC
join Course on Course.Cno = SC.Cno
join Student on Student.Sno= SC.Sno
order by SC.Sno
10. select Stuent.Sno,Stuent.Sname,sum(Grade) A from SC
join Student on Student.Sno = SC.Sno
group by sc.Sno,student.Sname
having A > 200
11. select Student.Sname,Student.Sdept from Student
join Course on Course.Cno = SC.Cno
join SC on SC.Sno = Student.Sno
where SC.Cno = 'C02'
12. select Student.sname,course.cno,sc.grade from sc
join student on student.sno = sc.sno
join course on course.cno = sc.cno
where sc.grade >= 80
order by sc.grade desc
13. select cno,cname from
(
select course.cno,course.cname,sun(sno) from student
join course on course.cno = sc.cno
join sc on sc.sno = student.sno
group by cno,cname
having sun(sno) > 0
)
14. ① select student.sname,student.sdept from
(
select student.sname,student.sdept,course.cname from student
join sc on sc.sno = student.sno
join course on course.cno = sc.cno
where course.cname = 'C01'
)
② select student.sno,student.sname from
(
select student.sno,student.sname,student.sdept,sc.grade from sc
join student on student.sno = sc,sno
where student.sdept = '信息' and sc.grade >= 80
)
③ select top 1 student.sname from
(
select student.sname,student.sdept,sum(sc.grade) from sc
join student on student.sno = sc.sno
where student.sdept = '計算機'
group by student.sname,student.sdept
order by
)
15. delete from sc where grade < 50
16. update sc set grade += 5 from sc
join course on course.cno = sc.cn
join student on student.sno = sc.sno
where student.sno =
(
select student.sno from sc
join course on course.cno = sc.cno
where course.cname = 'c01'
)
17. update sc set grade += 10 from sc
join student on student.sno = sc.sno
where student.sno =
(
select student.sno from student
join sc on sc.sno = student.sno
join course on course.cno = sc.cno
where student.sdept = '計算機' and course.cname = '計算機文化基礎'
)
18. create view [A] as
select student.sno,student.sname,student.sdept,course.cno,course.cname,sc.grade from sc
join student on student.sno = sc.sno
join course on course.cno = sc.cno
19. create view [A] as
select student.sno,avg(sc.grade) from sc
join student on student.sno = sc.sno
group by student.sno
20. create view [A] as
select student.sno,sum(sc.grade) from sc
join student on student.sno = sc.sno
group by student.sno
21. create index A on student(sname)
22. 不會
『叄』 用SQL語句實現:學生表、課程表、選課表三張表中的問題:
1.select sname,sno,sdept from student
2.select sno from sc where grade < 60
3.select sname,sdept ,sage from student where sage <20 and sage>23
4.select sno from sc group by con having count(con)>=3
5.select s.sno,s.sname,b.cno,b.cname from student s
left join
(select sc.sno,sc.cno,c.cname from sc left join course c on sc.cno=c.cno) b
on s.sno=b.sno
『肆』 建課程表的sql語句
CREATE course
(
co_id VARCHAR(5) PRIMARY KEY,
co_name VARCHAR(3) NOT NULL,
co_desc VARCHAR(60)
)
SELECT
a.sc_name,
b.co_name,
a.sc_score
FROM score a, course b
WHERE a.sc_courseid = b.co_id
AND substr(a.sc_number,1,2) = '98'
AND a.sc_sex = '0'
AND a.sc_score < 60;
僅供參考
『伍』 用SQL語句實現:學生表、課程表、選課表三張表中的問題
1
(*)>=200
2
selecta.cname課程,b.cname先修課
fromcoursealeftjoincoursebona.cpno=b.cno
3
selecta.sno,a.sname,a.sgender,a.sage,a.sdept,b.cno,isnull(b.grade,0)
fromstudentaleftjoinscbona.sno=b.sno
4
updatescsetgrade=0wheresnoin(='CS')
『陸』 用SQL語句實現:學生表、課程表、選課表三張表中的問題:
1)select 課程表.課程名,count(學號)From 課程表 inner join 選課表On 課程表.課程號=選課表.課程號Group by 學號 2)Create View AllChoosenAs select DISTINCT(課程表.課程名)
From 課程表 inner join 選課表 On 課程表.課程號=選課表.課程號 3)Select 學生表.姓名 From 學生表 Where 學號 Not In (Select 學號 From 選課表) 4)select 學生表.學號,學生表.姓名,課程表.課程名,課程學分 From 學生表 Left Join 選課表 On 學生表.學號=選課表.學號 Inner Join 課程表 On 課程表.課程號=選課表.課程號 5)select 學生表.姓名 From 學生表 where 學號 In (Select 學號 From 選課表 Group by 學號 Having(count(課程號)>2) 6)select 學生表.姓名 From 學生表 where 學號 In (Select 學號 From 選課表 Group by 學號 Having(count(課程號)=select count(*) From 課程表) 7)delete from 選課表 where 學號=(select top 1 學號 From 學生表 where 姓名='張三')
『柒』 sql語句 課程表查詢
網上搜行轉列,例子很多
『捌』 簡單sql語句,student(學生表) course(課程表) choice(選課表)
學生表一張 s
課程表一張 c
select s.name from s
join c
on s.sid=c.sid
where c.name in ('數學',英語',語文','化學')
『玖』 怎麼用SQL_UPDATE命令將課程表中課程名為計算機基礎的學時修改為4。
update 課程表 set 學時=4 where 課程名='計算機基礎'