标签:BEGIN END 数据库 SQL PRINT Transact 平均分
上机练习5
启动SQL Server 2008中的 SQL Server Management Studio,恢复数据库ClassDB; 采用Transact-SQL程序设计完成以下练习:
1、 求1到100之间所有能被3整除但不能被5整除的整数和; DECLARE @i int, @sum int SET @i = 1 SET @sum = 0 WHILE @i<=100 BEGIN if ((@i % 3) = 0) AND ((@i % 5) != 0) SET @sum = @sum + @i SET @i = @i + 1 END PRINT '1到之间所有能被整除但不能被整除的整数和为' + str(@sum) 2、 将学号为‘1401’的学生的姓名信息按如下格式显示; 1401【李勇,23】 ALTER TABLE Student ALTER COLUMN Sno CHAR(10); INSERT INTO Student(Sno,Sname,Sage) VALUES('14001','李勇','23') DECLARE @sno int, @sname char(5), @age int SET @sno = (SELECT Sno FROM Student WHERE Sno='14001') SET @sname = (SELECT Sname FROM Student WHERE Sno='14001') SET @age = (SELECT Sage FROM Student WHERE Sno='14001') PRINT ltrim(str(@sno)) + '【'+ rtrim(ltrim(@sname)) + ',' + ltrim(str(@age)) + '】' 3、 查询课程号为“1”的课程上课人数,如果人数超过30人,则显示相应选课人数以及“进行分班上课”,否则显示相应人数以及“人数合理”; DECLARE @record int SELECT @record = COUNT(DISTINCT Sno) FROM Score WHERE Cno = '0001' IF @record>30 BEGIN PRINT '该班有'+LTRIM(STR(@record))+'人' PRINT '进行分班上课' END ELSE BEGIN PRINT '该班有'+LTRIM(STR(@record))+'人' PRINT '人数合理' END 4、 编写程序完成选课成绩表查询:如果”数据库”课程的平均成绩高于80分,则显示“平均分优秀”,否则显示“平均分低”。 DECLARE @agv float(24) SELECT @agv = AVG(CScore) FROM Score WHERE Cno = ( SELECT Cno FROM Course WHERE Cname='数据库技术'); IF @agv>80 BEGIN PRINT '平均分优秀' END ELSE BEGIN PRINT '平均分低' END
标签:BEGIN,END,数据库,SQL,PRINT,Transact,平均分 来源: https://www.cnblogs.com/caiyishuai/p/10831637.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。