sql - SQL 问题:错误代码:1242。子查询返回多于 1 行
问题描述
目标
我只是想选择那些薪水高于 HCL(company-employe) 的员工的详细信息。
我试过的:
SELECT Emp.emp_id, Emp.Emp_name, Department.dept_name, Emp.Salary, Company.company_name from emp
JOIN department ON(emp.emp_id=department.emp_id)
JOIN company ON(department.dept_id=company.dept_id)
where emp.salary > (SELECT Emp.Salary FROM emp where Company.company_name='HCL');
问题 :
当我执行此查询时,它显示:错误代码:1242。子查询返回超过 1 行:
为了消除上述错误,我试过:
SELECT Emp.emp_id, Emp.Emp_name, Department.dept_name, Emp.Salary, Company.company_name from emp
JOIN department ON(emp.emp_id=department.emp_id)
JOIN company ON(department.dept_id=company.dept_id)
where emp.salary > (SELECT Emp.Salary FROM emp where Company.company_name='HCL' LIMIT 1);
我知道通过向查询提供LIMIT并没有提供所需的输出,但它删除了子查询返回超过 1 行的错误,并且当我执行此查询时,它在输出中提供空白行和列。
因此,任何人都可以帮助我在查询中缺少的地方和内容来选择所需的详细信息..
解决方案
我认为你想要:
select
e.emp_id,
e.emp_name,
d.dept_name,
e.salary,
c.company_name
from emp e
inner join department d on e.emp_id = d.emp_id
inner join company c on d.dept_id = c.dept_id
where e.salary > (
select max(e1.salary)
from emp e1
inner join company c1 on c1.dept_id = e1.dept_id
where c1.company_name = 'HCL'
);
这将为您提供薪水高于 HCL 公司所有薪水的员工。
推荐阅读
- javascript - 多个复选框状态已选中
- sed - 使用 sed 将转录本 id 替换为来自 fasta 头部的基因 id
- python - Django中带有ImageField的动态JsonForm
- django - Django查询:模型中的项目不在其他模型中
- amazon-web-services - Cloudformation 宏有条件,没有价值
- python - Pygame:在表面中显示的列表被截断
- javascript - 如何更改 CSS 中变量的颜色?
- vue.js - 为什么此代码的 axios 响应为空?
- python - 每次都调用 Microsoft Graph API 而不刷新对 API 的授权
- mongodb - 使用该文档上存在的值更新每个文档上的值