杀鸡焉用牛刀 发表于 4 天前

经典 SQL 数据库笔试题及答案整理

最近有蛮多小伙伴在跳槽找工作,但对于年限稍短的软件测试工程师,难免会需要进行笔试,而在笔试中,根本都会碰到一道关于数据库的大题,本日这篇文章呢,就收录了下最近学员反馈上来的一些数据库笔试题,包含答案!
1、依据以放学生表、班级表,按要求写 SQL

https://i-blog.csdnimg.cn/blog_migrate/47c0066f8bcf07a7d9974f91a0eae73f.png
答案:
1、
select * from student a
left join class b on a.c_id = b.id
where score = (
select max(score) from student)
2、
select b.name,count(*),avg(score) as avgScore from student a,class b
where a.c_id = b.id
group by b.name
order by avgScore;
2、Table A 生存客户的根本信息;Table B 生存客户的资产负债信息。按要求写 SQL
https://i-blog.csdnimg.cn/blog_migrate/f73bbcc3fcb42fb5543d7dc5f74bd94c.png
答案:
(1)select ID from A where name = '李四';
(2)select NO,NAME,ID from A,B where A.NO = B.NO AND DEPOSIT >= 1000;
(3)select COUNTRY,count(*) FROM A GROUP BY COUNTRY;
(4)SELECT '80 后' as 年龄段,sum(CREDIT) AS '名誉卡余额' FROM A,B WHERE A.NO = B.NO AND BIRTH >= 19800101 AND BIRTH < 19900101
UNION
SELECT '90 后' as 年龄段,sum(CREDIT) AS '名誉卡余额' FROM A,B WHERE A.NO = B.NO AND BIRTH >= 19900101 AND BIRTH < 20000101;
3、数据库(编写示例 sql)
https://i-blog.csdnimg.cn/blog_migrate/25d4c3f25cd927b5da4f16f7d2854c35.png
https://i-blog.csdnimg.cn/blog_migrate/980ba8f99e33a79a08b467c1f14ecd76.png
答案:
select orderNo, if(status=1,'新建','处理中') from OrderTrans;
select DATE_FORMAT(a.crttime,'%m-%d-%Y') ,username,count(*) from testCase a,User b where a.crtUser = b.UserId group by DATE_FORMAT(a.crttime,'%m-%d-%Y'),b.username, having status = '乐成';
select count(*),sum(amount),DATE_FORMAT(crttime,'%m-%d-%Y') from OrderInfo group by
DATE_FORMAT(crttime,'%m-%d-%Y');
4、现有三张数据表如下:学生资料表:记载学生根本信息;课程表:记载课程根本信息;成绩表:记载每人各门课程成绩的信息,1 个学生对应多个成绩,1 个成绩只属于一个学生,一个课程
https://i-blog.csdnimg.cn/blog_migrate/809b05448641f518439cbe194bf76ab3.png
答案:
Select * from students where jg = ‘湖北’ and birthday = ‘1992-6-1’ order by no asc;
Select avg(so.cj),min(so.cj),max(so.cj),sum(so.cj) from student st,course c,source so where st.no = so.no and c.kebh=so.kebh and st.name = ‘王华’ group by st.no;
Select st.no,st.name,st.bj,c.kebh,c.kcmc,so.cj from student st,course c,source so where st.no = so.no and c.kebh=so.kebh and st.name = ‘张三’ order by so.cj desc;
5、有三张表 Contacts 库 Consultant 表、Basket 库 BaseOrder 表、Basket 库 OrderDetails 表,按要求写 SQL
https://i-blog.csdnimg.cn/blog_migrate/f1c16d124b3725de77f410ad1d81a080.png
 https://i-blog.csdnimg.cn/blog_migrate/c0801279de8e134ae30732e6f2617a00.png
答案:
Select Consultant.SubsidiaryID, BaseOrder.* from Consultant, BaseOrder where Consultant.ConsultantID = BaseOrder.ConsultantID and Consultant.SubsidiaryID = 29 order by Orderid desc;
Select BaseOrder.ConsultantID,sum(OrderDetails.TotalPrice) from BaseOrder,OrderDetails where BaseOrder.Orderid=OrderDetails.Orderid and month(OrderDate) = 5 group by BaseOrder.ConsultantID;
Insert into Consultant (ConsultantID,ConstultantStatusID,SubsidiaryID,Name) values (200000,10,29,’Gary’);
Delete from Consultant where Name like ‘%Gary%’;
Update BaseOrder set OrderDate = sysdate() where ConsultantID in (select ConsultantID from BaseOrder where ConsultantID=100003 order by OrderDate desc limit 0,1);
ps:小编个人收集啦许多软测资料,盼望能够帮到学软件测试的朋侪们软件资料分享包括但不限于:Java自动化测试、Python自动化测试、性能测试、web测试、APP测试
测试开发工具包:appuim安装包、fiddler安装包(也有配套视频教程)、eclipse、git、jmeter、loadrunner、monkey、postman、soapul、Xmind等等
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,假如你用得到的话可以直接拿走:
https://i-blog.csdnimg.cn/blog_migrate/5d42cbfaaef3aacf54ccf7d687a3072b.png​

这些资料,对于【软件测试】的朋侪来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的旅程,盼望也能资助到你!
https://i-blog.csdnimg.cn/blog_migrate/8e2cbdca55fa65f72f3926af2c086792.jpeg

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 经典 SQL 数据库笔试题及答案整理