gpt4 book ai didi

database - Microsoft Access 查找组中的第二个、第三个、第 N 个元素

转载 作者:搜寻专家 更新时间:2023-10-30 23:48:12 26 4
gpt4 key购买 nike

我有一张表:worker_id, company_id

worker_id为主键

worker_id | company_id
----------------------
1 | 1
2 | 1
3 | 2
4 | 3
5 | 3
6 | 1

我知道如何使用 Min() 在每个 company_id 中找到第一个 worker_id

SELECT Min([workers per company].worker_id) AS MinOfworker_id, [workers per company].company_id
FROM [workers per company]
GROUP BY [workers per company].company_id;

导致:

worker_id | company_id
----------------------
1 | 1
3 | 2
4 | 3

我知道如何使用 Max() 在每个 company_id 中找到最后一个 worker_id

SELECT Max([workers per company].worker_id) AS MaxOfworker_id, [workers per company].company_id
FROM [workers per company]
GROUP BY [workers per company].company_id;

导致:

worker_id | company_id
----------------------
6 | 1
3 | 2
5 | 3

现在我想获得每个 company_id 的第二个(或第三个,第 N 个)worker_id 导致:

worker_id | company_id
----------------------
2 | 1
5 | 3

有办法吗?

编辑:

在 kdb+ 中我可以使用:

select w:worker_id[1] by company_id from workers_per_company

获取第二个worker_id

导致:

company_id| w
-------------
1 | 2
2 |
3 | 5

MS Access 中是否有类似的东西?

最佳答案

您正试图在 SQL 中执行一些 SQL 不适合的操作。相反,考虑编写一个 VBA 过程来迭代按公司排序的记录集。

关于database - Microsoft Access 查找组中的第二个、第三个、第 N 个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145142/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com