根据另一个表中的值构建数字的动态范围

Triforce711

我有一个包含以下字段的临时表:

  • RangeStart INT
  • RangeEnd INT
  • RangeText VARCHAR

我还有另一个表(DaysLate),该表使用以下字段之一进行设置:

  • DaysLate INT

(DaysLate)表中的一些示例值是10、20、30、50


我想在临时表中插入基于DaysLate表的值创建的数字范围。

例如:如果我们使用上面的值,则该临时表中的第一条记录将是

  • RangeStart:0
  • 范围结束:9
  • 范围文字:0-9

下一条记录将是:

  • RangeStart:10
  • 范围结束:19
  • RangeText:10-19

接下来:

  • RangeStart:20
  • 范围末端:29
  • RangeText:20-29

遵循此模式直到最终值:

  • RangeStart:50
  • RangeEnd:NULL
  • RangeText:50+

棘手的部分是数字都是动态的。此处可能只有一个值,10个值,甚至没有值。如果表中没有任何记录,则我还有另一条逻辑路线要运行。

德鲁·乔希

您可以使用如下查询

See live demo

; with indexedDL as 
(
    select *, 
     rn= row_number() over(order by Dayslate asc) 
    from Dayslate
    )

select 
    RangeStart=isnull(d2.Dayslate,0),
    RangeEnd  =d1.Dayslate-1,
    RangeText = isnull(cast(d2.Dayslate as varchar(100)),'0') + isnull('-'+ cast(d1.Dayslate-1 as varchar(100)),'+')
from
    indexedDL d1 full outer join
    indexedDL d2 
       on d1.rn=d2.rn+1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据范围中的日期更新另一个工作表中的列中的值

如何根据另一个表中的时间范围匹配值?

根据另一个表中的并发日期范围划分列值?

根据动态表中的另一个选择选项选择选项值

根据另一个表oracle sql中的值动态更新多行

Pandas 根据另一个表中的日期范围从一个表中获取一个值

SQL:从另一个表动态构建表

根据另一个表中的值计算一个表中的总和

根据Excel中的另一个值范围来验证值范围

如何根据另一个表的值删除一个表中的行

SQL根据另一个表中的日期范围查找日期在表中的位置

另一个工作表的动态命名范围

如何根据另一个 Excel 表中的日期范围为 Excel 表赋值

Power BI / DAX查询-根据另一个表上的范围查找值

如何根据另一个表中的最后一个值自动递增?

在 Excel 中根据另一个表放置一个值

根据视图和另一个表中的值在表中插入值

根据另一个表中组的最小值在表中设置值

如何根据另一个表中的值在表中插入值

如何在SQL中根据另一个表的数据创建动态表

如何根据另一个表中的值访问表中的一行?

根据MySQL中另一个表的数据构建是/否列

根据表名从表中获取数据作为另一个表的字段值

根据其值引用另一个工作表中的另一个单元格

如何根据另一个表中的日期范围进行总量计算?

如何根据另一个工作表中的数据替换自动填充范围

从一个工作表中另一个范围内的指定范围中查找值

根据另一个表中的值计算一个表中的不同值 power bi

MySQL:根据另一个表中的第一个值选择表中的值