13.3.2 SQL语句
在笔试题中,SQL语言基本是必考的一项内容,对于测试工程师的测验,一般不会太难,通常遇到的问题是数据的增加、删除、修改、查找、排序、关联等。
示例1:SQL中常用的聚合函数有哪些?
考察SQL基础能力和常见的数据库函数。
解答:
max():最大值。
min():最小值。
avg():平均值。
sum():求和。
count():统计总数。
示例2:drop、delete、truncate 三者有什么区别?
解答:三个命令都表示删除,但是又有一些差别。delete 用来删除表的全部或者一部分数据行,执行delete之后,用户需要提交(commmit)或者回滚(rollback)来执行删除或者撤销删除,会触发这个表上所有的delete触发器;truncate是删除表中的所有数据,此操作不能回滚,也不会触发表上的触发器,truncate比delete更快,占用的空间更小;drop命令是从数据库中删除表,所有的数据行、索引和权限也会被删除,所有的DML 触发器也不会被触发,此命令也不能回滚。
示例3: 有如下两张数据表(表13-1和表13-2),根据数据表信息写出要求的SQL语句。
表13-1 员工employees表
表13-2 员工信息employees_info表
(1)按绩效performance倒序排列显示出员工name、绩效performance。
select name, performance from employees order by performance desc;
(2)查询出绩效performance大于90的人数。
select count(*) from employees where performance>90;
(3)将所有男生的性别修改成0。
update employees set gender=0 where gender='男';
(4)查询出最高绩效。
select max(performance) from employees;
(5)通过左连接获取表 employees (别名t1)和表employees_info (别名t2)中id相同的数据,并且显示出女生的id、name、performance、age、weight。
select t1.id, t1.name, t1.performance, t2.age, t2.weight from employees as t1 left join employees_info as t2 on t2.id = t1.id where t1.gender=’女’;
(6)在employees_info表中插入数据id=7,name='唐菀',age=18,height=160,weight=50。
insert into employees_info(id, name, age, height, weight) values(7, '唐菀', 18, 160, 50);
版权声明:51Testing软件测试网获得作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。