首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于一组其他列的自动增量

基于一组其他列的自动增量
EN

Stack Overflow用户
提问于 2010-05-16 08:49:39
回答 1查看 397关注 0票数 0

我有一门餐桌课程,每一门课程都有很多参考资料。

代码语言:javascript
运行
复制
Course
==========
course_id

Resource
==========
course_id
number

对于每个course_id,我想要一个单独的自动增量。或者,换句话说,我想要自动枚举给定课程的资源。例如,资源表可以类似于:

代码语言:javascript
运行
复制
course_id | number
==================
1         | 1
1         | 2
2         | 1
1         | 3
1         | 4
2         | 2
2         | 3

诸若此类。我想使用IBM DB2在SQL中进行此操作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-16 09:04:10

你应该让Resource自己选身份证..。

代码语言:javascript
运行
复制
resource_id | course_id
=======================
1           | 1
2           | 1
3           | 2
4           | 1
5           | 1
6           | 2
7           | 2

...and通过查询发现排名:

代码语言:javascript
运行
复制
SELECT course_id,
       (SELECT COUNT(*)
          FROM Resource
         WHERE resource_id < r.resource_id
       ) + 1 AS rank
  FROM Resource r

这无疑是优化者更多的工作,但将大大简化生活的每一个其他方面(例如,处理删除)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2843096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档