1. 程式人生 > >常用sql語句,SSC源碼開發堪稱經典

常用sql語句,SSC源碼開發堪稱經典

更改 sts str dsl where sele delect ofo 完全

1、查詢“001”課程比“002”課程成績高的所有學生的學號;
select a.S# from (select S#,score from SC where C#=’001’) a,(select S#,score
from SC where C#=’002’) b where a.score>b.score and a.S#=b.S#;
2、查詢平均成績大於60分的同學的學號和平均成績;
select S#,avg(score) from SC group by S# having avg(score) >60;
3、查詢所有同學的學號、姓名、選課數、總成績;
select Student.S#,Student.Sname,count(SC.C#),sum(score)
from Student left outer join SC on Student.S#=SC.S# group by Student.S#,Sname
4、常用sql語句,堪稱經典; SSC源碼開發,需要請搜索【大神源碼論壇】dsluntan.com 客服企娥3393756370 V信17061863513,
select count(distinct(Tname)) from Teacher where Tname like ‘李%’;
5、查詢沒學過“葉平”老師課的同學的學號、姓名;
select Student.S#,Student.Sname from
Student where S# not in (select distinct( SC.S#) from SC,Course,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname=’葉平’);
6、查詢學過“001”並且也學過編號“002”課程的同學的學號、姓名;
select Student.S#,Student.Sname from Student,SC where Student.S#=SC.S# and SC.C#=’001’and exists( select * from SC as SC_2 where SC_2.S#=SC.S# and SC_2.C#=’002’);
7、查詢學過“葉平”老師所教的所有課的同學的學號、姓名;
select S#,Sname from Student
where S# in (select S# from SC ,Course ,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname=’葉平’ group by S# having count(SC.C#)=(select count(C#) from Course,Teacher where Teacher.T#=Course.T# and Tname=’葉平’));
8、查詢課程編號“002”的成績比課程編號“001”課程低的所有同學的學號、姓名;
select S#,Sname from (select Student.S#,Student.Sname,score,(select score from SC SC_2 where SC_2.S#=Student.S# and SC_2.C#=’002’) score2
from Student,SC where Student.S#=SC.S# and C#=’001’) s_2 where score2 < score;
9、查詢所有課程成績小於60分的同學的學號、姓名;
select S#,Sname from Student where S# not in (select Student.S# from Student,SC where s.S#=SC.S# and score>60);
10、查詢沒有學全所有課的同學的學號、姓名;
select Student.S#,Student.Sname from Student,SC
where Student.S#=SC.S# group by Student.S#,Student.Sname having count(C#) <(select count(C#) from Course);
11、查詢至少有一門課與學號為“1001”的同學所學相同的同學的學號和姓名;
select S#,Sname from Student,SC where Student.S#=SC.S# and C# in select C# from SC where S#=’1001’;

12、查詢至少學過學號為“001”同學所有一門課的其他同學學號和姓名;
select distinct SC.S#,Sname from Student,SC
where Student.S#=SC.S# and C# in (select C# from SC where S#=’001’);
13、把“SC”表中“葉平”老師教的課的成績都更改為此課程的平均成績;
update SC set score=(select avg(SC_2.score) from SC SC_2
where SC_2.C#=SC.C# ) from Course,Teacher where Course.C#=SC.C# and Course.T#=Teacher.T# and Teacher.Tname=’葉平’);
14、查詢和“1002”號的同學學習的課程完全相同的其他同學學號和姓名;
select S# from SC where C# in (select C# from SC where S#=’1002’)
group by S# having count()=(select count() from SC where S#=’1002’);
15、刪除學習“葉平”老師課的SC表記錄;
delect SC from Course ,Teacher
where Course.C#=SC.C# and Course.T#= Teacher.T# and Tname=’葉平’;
16、向SC表中插入一些記錄,這些記錄要求符合以下條件:沒有上過編號“003”課程的同學學號、2、
號課的平均成績;

insert SC select S#,’002’,(select avg(score)
from SC where C#=’002’) from Student where S# not in (select S# from SC where C#=’002’);

常用sql語句,SSC源碼開發堪稱經典