首页 > 数据库技术 > 详细

数据库高级数据库学习--上机练习5(Transact-SQL)

时间:2019-05-08 14:40:00      阅读:125      评论:0      收藏:0      [点我收藏+]

上机练习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【李勇,23ALTER 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        

 

 

 

数据库高级数据库学习--上机练习5(Transact-SQL)

原文:https://www.cnblogs.com/caiyishuai/p/10831637.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!