mysql - 在同一个表中选择
问题描述
我正在研究 SQL 语句,但我陷入了这种情况。
问题是在同一个表中选择与另一个有关联列的数据,我想要的结果是选择“员工姓名”、“报告给”、“老板的名字”(选择与员工 ID)
我尝试在相同的查询中选择关联它们的列,但没有奏效。
/*1*/
SELECT employeeNumber,firstName, (select firstname from employees where reportsTo = employeeNumber) as boss from employees;
/*2*/
SELECT e.firstName ,'Reports to' as 'Report', (SELECT e2.firstName from employees e2 where e.employeeNumber = e2.reportsTo) AS Boss
from employees e;
都失败了
我越来越
解决方案
使用LEFT
SELF JOIN 也包括主 Boss
select
lower.employeeNumber
,lower.firstName
,higher.firstName as boss
from employees lower
left outer join employees higher
on higher.employeenumber = lower.reportsto
推荐阅读
- android - 未显示 Google AdMob 原生广告系列广告
- javascript - NodeJS + Validate.js 多个异步验证器
- asp.net - 是否可以在 ASP.NET 中单击 LinkButton 时禁用 AutoPostBack?
- javascript - Google Apps 脚本功能拼接不起作用
- java - Spring Boot 2.1.0 发布出现 404 not found 错误
- android - Espresso 测试运行两次
- laravel - 如何在查询生成器中重新创建 SQL 查询
- angular - PrimeNG 数据滚动条条件加载器
- ios - 有任何工具可以跟踪 iOS 上特定文件的页面错误和其他相关事件吗?
- segment - 这些 cytoscape edge_bend 值是什么意思?