我正在尝试执行一个选择语句,该语句被分组为多个“块”,由用户定义的数字定义(例如 5 个,可以说是 12 行)
我想要实现的是一个选择语句,该语句附加一个列,该列定义了已定义块大小的递增组值,因此对于 12 行,行 1-5 等于块 1,行 6-10 等于块 2,第 11-12 行等于块 3。
我曾尝试在几个场合搜索此解决方案但收效甚微,我认为有一种方法可以修改基本的 ROW_NUMBER() OVER (ORDER BY id),可以在每 5 行后重置计数,并增加组/块。
我意识到还有其他方法可以实现此结果,但我正在寻找最快最简单/最干净的解决方案。想法是将其应用于必须为批量提交制定最佳案例场景分组的功能。
所需输出的示例。
| Row no. | Item Id. | Chunk No. |
|--------:|:--------:|:---------:|
| 1 | 1001 | 1 |
| 2 | 1002 | 1 |
| 3 | 1003 | 1 |
| 4 | 1004 | 1 |
| 5 | 1005 | 1 |
| 6 | 1006 | 2 |
| 7 | 1007 | 2 |
| 8 | 1008 | 2 |
| 9 | 1009 | 2 |
| 10 | 1010 | 2 |
| 11 | 1011 | 3 |
| 11 | 1012 | 3 |