數據庫高級數據庫學習--上機練習5(Transact-SQL)
阿新 • • 發佈:2019-05-08
align 恢復 color print -s sele 數據庫技術 rdquo class
上機練習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 WHERESno=‘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
數據庫高級數據庫學習--上機練習5(Transact-SQL)