sql - SQL表中如何按规则拆分行?
解决方案
您可以使用递归cte
:
with cte as (
select code, finish2 as acc_date, dateadd(month, project_duration, finish2) as end_date
from table t
union all
select code, dateadd(month, 2, acc_date), end_date
from cte c
where dateadd(month, 2, acc_date) < end_date
)
select code, acc_date
from cte c;
推荐阅读
- matlab - 为什么 OpenCV RGB 到 YCbCr 的转换与 matlab 中使用 ycbcr2rgb 函数的转换结果不同?
- c# - 如何以及在何处实施 IVsMultiViewDocumentView
- matlab - 二进制向量乘法
- java - 在 java 中从 MS Excel 中读取数据
- r - 数据框值获取整数值而不是文本
- javascript - 如何使用axios作为流下载大尺寸文件并在reactjs中下载为zip
- windows-installer - 如何使用高级安装程序在桌面应用程序中添加认证发布者
- angular - 试图验证角度 6 中没有字段为空
- android - 使用 Intent 的文件选择器在 Android 中选择文件时如何限制文件的大小?
- string - 如何将字符串与输入 mips 进行比较