[英]MySQL Select the rows having same column value
我需要从下表中获取具有相同列值的行,我按照以下方式尝试,但它只给我一行。
select *
from employee e
group by e.empsalary
having count(e.empsalary) > 1
表员工
请建议我一个方法。
您应该能够通过将表连接到自身来实现此目的:
SELECT
a.*
FROM
employee a
JOIN employee b
ON a.empsalary = b.empsalary
AND a.empid != b.empid
使用内部联接加入您发布的查询。
select A.* from employee A
inner join (
select empsalary
from employee
group by empsalary
having count(*) > 1
) B ON A.empsalary = B.empsalary
或许这样的事情
SELECT * FROM employee a
WHERE EXISTS (
SELECT 1 FROM employee b
WHERE a.empsalary = b.empsalary
AND a.empid <> b.empid
);
select * from employee where empsalary IN(select empsalary from employee group by empsalary having count(empsalary ) > 1)
试试This.It你想要的两行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.