--1. 新建一个数据库:凡猫学院
CREATE DATABASE 凡猫学院;
--2. 新建一张表:软件测试考试分数表;完全模仿样本,包括字段名、数据类型、约束
CREATE TABLE 软件测试考试分数表
(Id INT PRIMARY KEY,
姓名 VARCHAR(20) NOT NULL,
年龄 INT ,
性别 CHAR(20),
考试时间 DATE,
SQL得分 INT,
Python得分 INT,
QTP得分 INT,
测试基础得分 INT
);
--3. 根据语法“INSERT INTO 表名称 VALUES (值1, 值n)”插入样本中第一条数据
INSERT INTO 软件测试考试分数表 VALUES (0,'张三',21,'男','20171224',59,59,59,59);
--4. 根据语法“INSERT INTO 表名称 (列1, 列n) VALUES (值1, 值n)”插入样本中第二条数据
INSERT INTO 软件测试考试分数表 (Id,姓名,年龄 ,SQL得分,QTP得分)VALUES (1,'李四',28,78,70);
--5. 根据样本将所有信息补充完整
INSERT INTO 软件测试考试分数表 VALUES (2,'王五',65,'女','20171223',66,0,95,100);
INSERT INTO 软件测试考试分数表 (Id,姓名,年龄 ,性别,考试时间,SQL得分,Python得分,
测试基础得分)VALUES (3,'赵六',20,'男','20171224',91,77,80);
INSERT INTO 软件测试考试分数表 (Id,姓名,年龄 ,考试时间,SQL得分,Python得分,QTP得分,
测试基础得分)VALUES (4,'猫叔',18,'20171223',100,100,100,100);
INSERT INTO 软件测试考试分数表 (Id,姓名,年龄 ,性别,SQL得分,Python得分,QTP得分,
测试基础得分)VALUES (5,'Jeremy',16,'男',99,99,99,99);
INSERT INTO 软件测试考试分数表 (Id,姓名,年龄 ,性别,SQL得分,Python得分,QTP得分)
VALUES (6,'DEMON',16,'男',80,80,80);
--6. 查询出所有信息
SELECT * FROM 软件测试考试分数表;
UPDATE 软件测试考试分数表 SET 测试基础得分= '' WHERE Id=6;
DELETE FROM 软件测试考试分数表 WHERE (Id=6);
--7. 查询信息,但只显示姓名和各科考试成绩
SELECT 姓名,SQL得分,Python得分,QTP得分,测试基础得分 FROM 软件测试考试分数表;
--8. 进行列的别名查询(自行选择列)
SELECT 姓名 AS N ,SQL得分 AS S,Python得分 AS P FROM 软件测试考试分数表;
--9. 进行表的别名查询(自行取名)
SELECT * FROM 软件测试考试分数表 AS SC;
--10. 将列的别名和表的别名组合在一个SQL语句中进行查询
SELECT SC.姓名 AS N ,SC.SQL得分 AS S,SC.Python得分 AS P FROM 软件测试考试分数表 AS SC;
--11. 查询出Jeremy老师的所有记录
SELECT * FROM 软件测试考试分数表 AS SC WHERE SC.姓名='Jeremy';
--12. 查询出除李四以外的所有童鞋的信息记录,Id号不需要
SELECT SC.姓名,SC.年龄,SC.性别,SC.考试时间,SC.SQL得分,SC.Python得分,SC.QTP得分,SC.测试基础得分 FROM 软件测试考试分数表 AS SC WHERE SC.姓名!='李四';
--13. 查询出SQL得分是满分的学员
SELECT * FROM 软件测试考试分数表 WHERE SQL得分=100;
--14. 查询出所有SQL考试及格的学员的姓名
SELECT * FROM 软件测试考试分数表 WHERE SQL得分>60;
--15. 查询出Python考试不及格的学员,只显示Python的得分,但所有其它的学员相关信息全部要显示
SELECT 姓名, Python得分 FROM 软件测试考试分数表 WHERE Python得分
SELECT * FROM 软件测试考试分数表 WHERE Python得分>=60;
--16. 查询出20岁以上(含)的学员
SELECT * FROM 软件测试考试分数表 WHERE 年龄>20;
--17. 查询出考试时间在2017年12月24日之前(含)的所有学员的姓名
SELECT * FROM 软件测试考试分数表 WHERE 考试时间
--18. 缩小姓名列的空间
ALTER TABLE 软件测试考试分数表 ALTER COLUMN 姓名 VARCHAR(15);
--19. 为所有得分列增加非空约束
ALTER TABLE 软件测试考试分数表 ALTER COLUMN SQL得分 INT NOT NULL;
ALTER TABLE 软件测试考试分数表 ALTER COLUMN Python得分 INT NOT NULL;
ALTER TABLE 软件测试考试分数表 ALTER COLUMN QTP得分 INT NOT NULL;
ALTER TABLE 软件测试考试分数表 ALTER COLUMN 测试基础得分 INT NOT NULL;
--20. 为姓名增加唯一约束,然后删除该约束
ALTER TABLE 软件测试考试分数表 ADD CONSTRAINT [UNIQUE_xm] UNIQUE(姓名);
--21. 添加一个新列:temp
ALTER TABLE 软件测试考试分数表 ADD temp VARCHAR(100);
--22. 删除这个列
ALTER TABLE 软件测试考试分数表 DROP COLUMN temp;
--23. 更改“年龄”列的名字为“Age”
EXEC sp_rename '软件测试考试分数表.年龄', 'Age','COLUMN';
--24. 添加一个新列:综合评价
ALTER TABLE 软件测试考试分数表 ADD 综合评价 VARCHAR(300);
--25. 根据实际情况对每一个学员进行评价,规定有且只有4个评价,优良中差
UPDATE 软件测试考试分数表 SET 综合评价='优';
UPDATE 软件测试考试分数表 SET 综合评价='差' WHERE Id=1;
UPDATE 软件测试考试分数表 SET 综合评价='中' WHERE Id=0 OR Id=2;
UPDATE 软件测试考试分数表 SET 综合评价='良' WHERE Id=3;
--26. 将王五的年龄改成17岁
UPDATE 软件测试考试分数表 SET Age=17 WHERE 姓名='王五';
--27. 用一条SQL语句将Jeremy老师的考试成绩全部改成满分,谢谢
UPDATE 软件测试考试分数表 SET SQL得分=100,Python得分=100,QTP得分=100,测试基础得分=100 WHERE 姓名='Jeremy';
--28. 提高张三的SQL得分为59.5分
ALTER TABLE 软件测试考试分数表 ALTER COLUMN SQL得分 FLOAT;
UPDATE 软件测试考试分数表 SET SQL得分=59.5 WHERE 姓名='张三';
领取专属 10元无门槛券
私享最新 技术干货