gpt4 book ai didi

sql - 如何根据条件生成列的范围

转载 作者:行者123 更新时间:2023-12-05 00:09:49 25 4
gpt4 key购买 nike

有一列数字 - 我想开发一个报告,将该列的值分类为范围(下限和上限)。如果值的差异超过 10,则必须进行这种拆分。 Power BI 或 SQL Server 中的查询是否可以实现这一点?

Current column structure

Required Structure

最佳答案

GMB 的解决方案绝对是解决此问题的规范方法,将其视为间隙和岛屿的变体。我想知道是否有办法在没有两级子查询的情况下做到这一点。还有:

select coalesce(lag(next_x) over (order by x), first_x) as lower,
x as upper
from (select t.*,
first_value(x) over (order by x) as first_x,
lead(x) over (order by x) as next_x
from t
) t
where next_x is null or next_x > x + 10;

Here是一个db<> fiddle 。

比较大量数据的性能会很有趣——2 个窗口函数 + 聚合与 3 个窗口函数 + 过滤。

关于sql - 如何根据条件生成列的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59881117/

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