5. ¼ìË÷ûÓÐÑ¡Ð޿γ̡°Êý¾Ý¿â¡±µÄѧÉúµÄÐÕÃûºÍÄêÁä¡£ ¢ÙSQLÃüÁ
select sname ,year(getdate())-year(birthday) from s
where sno in ( select sno from sc where cno<>'Êý¾Ý¿â') ¢Ú½á¹û£º
6. ÁгöÑ¡Ð޿γ̳¬¹ý3ÃŵÄѧÉúÐÕÃûºÍÑ¡ÐÞÃÅÊý¡£ ¢ÙSQLÃüÁ
select sname,count(s.sno) as ¿Î³ÌÃÅÊý from s,sc where s.sno=sc.sno group by sname
having count(s.sno)>3 ¢Ú½á¹û£º
7. ÇóÑ¡ÐÞÁ˸÷¿Î³ÌµÄѧÉúÈËÊý¡£ ¢ÙSQLÃüÁ
select cno ,count(sno) as ѧÉúÈËÊý from sc group by cno ¢Ú½á¹û£º
15
8. ÔÚ±íSCÖÐÇóÑ¡Ð޿γÌC01µÄѧÉúµÄѧºÅºÍµÃ·Ö£¬²¢½«½á¹û°´·ÖÊý½µÐòÅÅÐò¡£ ¢ÙSQLÃüÁ
select sno,grade from sc order by grade desc ¢Ú½á¹û£º
9. ²éÕÒÿ¸öѧÉúµÄѧºÅ¼°Ñ¡ÐÞ¿Î³ÌµÄÆ½¾ù³É¼¨Çé¿ö¡£ ¢ÙSQLÃüÁ
select sno ,avg(grade) as ƽ¾ù·Ö from sc group by sno ¢Ú½á¹û£º
10. ´´½¨ÊÓͼpride7£¬°´ÕÕѧºÅÉýÐò£¬½«Ç°30%µÄͬѧµÄѧºÅ¡¢Æ½¾ù³É¼¨ÏÔʾ³öÀ´¡£ ¢ÙSQLÃüÁ create view pride7 as
select top 30 percent sno,avg(grade) as ƽ¾ù³É¼¨ from sc
group by sno order by sno asc ¢Ú½á¹û£º
16
11. ´´½¨¼ÓÃÜÊÓͼpride4£¬½«¿Î³ÌÃû¼°¿Î³Ìƽ¾ù³É¼¨ÏÔʾ³öÀ´¡£ ¢ÙSQLÃüÁ create view pride4 with encryption as
select cname,avg(grade) as ƽ¾ù³É¼¨ from c,sc where c.cno=sc.cno group by cname ¢Ú½á¹û£º
12. ´´½¨ÊÓͼpride5£¬½«¿Î³Ì³É¼¨´óÓÚ80·ÖµÄѧÉúÐÕÃû¡¢¿Î³ÌÃû¼°¿Î³Ì³É¼¨ÏÔʾ³öÀ´¡£ÒªÇóµ±ÐÞ¸ÄÊÓͼpride5ʱ£¬±ØÐëÂú×ãÏÞÖÆÌõ¼þ£º³É¼¨´óÓÚ80·Ö¡£ ¢ÙSQLÃüÁ create view pride5 as
select s.sname,cname,grade from s ,c,sc
where s.sno=sc.sno and c.cno=sc.cno and grade >80 with check option ¢Ú½á¹û£º
13. ´ÓÊÓͼpride4Öвéѯ¿Î³Ìƽ¾ù³É¼¨ÔÚ70µ½80·ÖÖ®¼äµÄ¿Î³ÌÃû¡£ ¢ÙSQLÃüÁ
select cname from pride4
where ƽ¾ù³É¼¨ between 70 and 80 ¢Ú½á¹û£º
14. ÏòÊÓͼpride6ÖУ¬²åÈëÒ»Ìõ¼Ç¼£º£¨j0408£¬ÇǺ£Ê¯£¬1997-07-07£¬¼ÆËã»úϵ£¬Å®£© ¢ÙSQLÃüÁ
insert into pride6 values('J0408','ÇǺ£Ê¯',1997-07-07,'¼ÆËã»úϵ',null,'Å®') 15. ɾ³ýÊÓͼpride6ÖÐÔÚ1997Äê³öÉúµÄËùÓмǼ¡£ ¢ÙSQLÃüÁ
delete from pride6 where year(birthday)=1997
17