Êý¾Ý¿âÔ­ÀíÓëSQLServer¿Î³ÌʵÑ鱨¸æ ÏÂÔØ±¾ÎÄ

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