gpt4 book ai didi

Mysql 查找列中最小的n

转载 作者:太空宇宙 更新时间:2023-11-03 11:22:14 25 4
gpt4 key购买 nike

因此在 MySQL 中,您可以使用子查询或 limit 甚至在某些情况下使用 TOP 来找到最小的 n。但我想知道是否有可能在不使用这些的情况下找到最小的 N?有人告诉我这是可能的,但不知道从哪里开始。我假设我必须多次内部加入,但除此之外,我一无所知。

作为引用,假设我有一个名为 salary 的列,其中包含以下数据 (10,20,30,40)。如果 n=2,这意味着我需要找到第二小的薪水,即 20。

最佳答案

在 MySQL 8.x 中,您可以使用 DENSE_RANK() 窗口函数,如下所示:

select salary
from (
select salary, dense_rank() over(order by salary) as rn from t
) x
where rn = 2 -- this gets the second smallest salary

关于Mysql 查找列中最小的n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58715737/

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