如何对 SQLite 数据库中的表进行分组之后的结果再进行分组?

220 天前
h3xz  h3xz

在 SQLIte 数据库中有一张表,表中的内容如下所示:

group1 index
1 1
1 1
1 2
1 2
1 4
1 4
2 1
2 1
2 3
2 3
2 4
2 4

现在希望能够以group进行分组,并在该组内以每两行数据为一组进行升序编号,编号的结果如下所示:

group index
1 1
1 1
1 2
1 2
1 3
1 3
2 1
2 1
2 2
2 2
2 3
2 3

请问能使用 SQL 语句实现吗?如果能的话,麻烦大佬指点一二。非常感谢🙏🙏

1193 次点击
所在节点   数据库  数据库
4 条回复
codehz
codehz
220 天前
这也不是分组吧,就两个排序而已,order by index, group
codehz
codehz
220 天前
哦写反了,反过来就对了
zhf883680
zhf883680
220 天前
说实话 你问题这么清楚 直接丢给 ai 完事..
最近直接把要求的 json 和需要的 json 直接丢给 ai 然后把代码拿到完事
redh
redh
220 天前
```sql
WITH NumberedRows
AS (SELECT [Group],
[Index],
Row_number()
OVER (
PARTITION BY [Group]
ORDER BY [Index]) AS RowNumber
FROM Users)
SELECT [Group],
[Index],
( ( RowNumber - 1 ) / 2 ) + 1 AS NewIndex
FROM NumberedRows
ORDER BY [Group],
RowNumber;
```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1060087

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX