SQL查询分组的最大的三条数据

SELECT
 MAX( id ),
 company_id 
FROM
 xxdb.xxxx 
GROUP BY
 company_id;



SELECT d.name as dep,e.name as emp,e.salary  FROM employee e 
LEFT JOIN department d on e.departmentId = d.id 
where (
select count(DISTINCT e.salary) from employee e
 WHERE e.salary > e.salary and e.departmentId = e.departmentId
 )<3
ORDER BY e.departmentId,e.salary desc;


Select d.name as dep,e.name as emp,e.salary  From employee e 
Left join department d on e.departmentId = d.id 
where e.salary <= e.salary
group by e.id,e.departmentId,e.salary
HAVING count(e.id)<3
order by e.departmentId,e.salary desc;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容