频道栏目
首页 > 资讯 > SQL Server > 正文

SQL相关子查询和自身连接实例

17-10-21        来源:[db:作者]  
收藏   我要投稿

贴原题:

这里写图片描述

解析:

本题是要求Salary大于以其ManagerId为Id的Salary的Name,并以Employee作为列名输出。

很显然,本题是要用到嵌套查询,且子查询的条件依赖于付查询,这种子查询我们称之为相关子查询(看以下第一种解法)。另外,我们还可以采用自身连接的解法,自身连接不仅可以解决相关子查询的问题,同样还可以解决不相关子查询(看以下第二种解法)。

笔记:以一种不和查询表中的列名字相同的列名作为输出可以采用AS子句。(用法参考如下)

贴代码:

相关子查询解法:

# Write your MySQL query statement below
SELECT Name AS Employee
FROM Employee x
WHERE Salary > (SELECT Salary
               FROM Employee y
               WHERE y.Id=x.ManagerId);

自身连接解法:

# Write your MySQL query statement below
SELECT x.Name AS Employee
FROM Employee x, Employee y
WHERE y.Id = x.ManagerId AND x.Salary > y.Salary;
相关TAG标签
上一篇:Date类型的实体类属性讲解
下一篇:oracle默认用户权限命令
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站