MYSQL练题笔记-高级查询和连接-简单题3题

写了下面的前3道题。

MYSQL练题笔记-高级查询和连接-简单题3题_第1张图片

一、每位经理的下属员工数量

看到题目就知道和之前的至少有5名下属的经理很相似,嘿嘿写对了就不做过多的讲解了。

二、员工的直属部门相关表和题目如下

MYSQL练题笔记-高级查询和连接-简单题3题_第2张图片

刚开始觉得很简单,但是仔细想想这道题有两个输出,觉得想不出来,决定看题解,果然接触到我之前没用过的union了,立即豁然开朗。

select employee_id,department_id from employee group by employee_id having count(*)=1 union (select employee_id,department_id from employee where primary_flag='Y');

三、判断三角形的相关表和题目如下

MYSQL练题笔记-高级查询和连接-简单题3题_第3张图片

刚开始觉得很简单还是没有对,忘记了两边这和大于第三边是三角形,我发现我下面的条件是直角三角形的条件,我笑了,哈哈哈哈哈哈哈哈哈。

select x,y,z,'Yes' as triangle from triangle where (x*x+y*y)=(z*z) or (x*x+z*z)=(y*y) or (y*y+z*z)=(x*x) union select x,y,z,'No' as triangle from triangle where (x*x+y*y)!=(z*z) and (x*x+z*z)!=(y*y) and (y*y+z*z)!=(x*x);

看了下题解,如此简单

select x,y,z,(case when x+y>z and x+z>y and y+z>x then 'Yes' else 'No' end) as triangle from triangle ;

四、总结

简单的看了下后面的三题中等题,都不会啊,我明天一起来吧,今天有点事,而且我发现越到后面越难啊,而且最近开始了一项要修炼的东西,有点分散注意力,加油加油!!!!胜利来自于坚持、反思、实践、永不妥协!!!

你可能感兴趣的:(数据库,mysql,笔记,sql)