gpt4 book ai didi

sql - 按检索 3 个值分组

转载 作者:行者123 更新时间:2023-12-04 18:23:22 24 4
gpt4 key购买 nike

我有以下查询

SELECT  Cod ,
MIN(Id) AS id_Min,
MAX(Id) AS id_Max,
-- retrieve value in the middle,
COUNT(*) AS Tot

FROM Table a ( NOLOCK )
GROUP BY Cod
HAVING COUNT(*)=3

我如何检索最小值和最大值之间的值,就像我对最小值和最大值所做的那样?

例子
Cod      |  Id

Stack 10
Stack 15
Stack 11
Overflow 100
Overflow 120
Overflow 15

所需输出
Cod         | Min   | Value_In_The_Middle  |    Max

Stack 10 11 15
Overflow 15 100 120

最佳答案

我还没有测试过这个,但我认为这会工作

SELECT  Cod ,
MIN(Id) AS id__Min,
MAX(Id) AS id_Max,
SUM(ID)-MAX(Id)-MIN(Id) as id_Middle,
COUNT(*) AS Tot
FROM Table a ( NOLOCK )
GROUP BY Cod
HAVING COUNT(*)=3

这个技巧只有在你有 3 个值并且 SUM() 没有溢出时才有效(如 Bogdan Sahlean 在评论中指出)。

关于sql - 按检索 3 个值分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10206934/

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