酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

select stuid, stu_name, college_id, game_id, project_id, groupid, status, draw_number from gt_student where groupid ='学生组' and project_id = 2 order by college_id 把这个sql改成 查出来的college_id相同的不相临

要实现查出来的 `college_id` 相同的不相邻,可以使用 `ROW_NUMBER()` 函数结合子查询来完成。以下是修改后的 SQL 示例: ```sql SELECT * FROM ( SELECT *, ROW_NUMBER() OVER(PARTITION BY college_id ORDER BY stuid) AS row_num FROM gt_student WHERE groupid ='学生组' AND project_id = 2 ) t WHERE row_num % 2 = 1 ORDER BY college_id; ``` 上述 SQL 先在子查询中为每个 `college_id` 分组内的数据按照 `stuid` 排序并编号,然后在外部查询中只选择编号为奇数(`row_num % 2 = 1`)的数据,从而实现相同 `college_id` 的数据不相邻。您可以根据实际需求调整条件和排序规则。 [2024-10-17 11:06:27 | AI写代码神器 | 189点数解答]

相关提问