我有一张公司和另一名员工的表格,以及他们加入公司的日期。我可以获得每家公司最近招聘的 5 名员工,如下所示。现在,我只想显示 A 公司的 rank <= 3,B 公司的 rank <= 8 和公司 C 的无限数量。3、8 和 -1 存储为公司表中的“max”列. 在这种情况下如何动态选择最大值?
你基本上想要:
SELECT * -- choose the columns you want here
FROM (SELECT e.*, c.max,
row_number() over (partition by company order by joined desc) as rank
FROM employees e JOIN
companies c
on e.company = c.pk
) e
WHERE rank < max or max = -1
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句