oracle生成编号(首字母+YYYY-DD-MM+4位序号)自动增长,4位序号达到9999,在从1001开始。

今天写业务的时候遇见需要系统生成13位的编号,规则编号按一个大写字母+YYYY+MM+DD+4位序号组成,数据库用的oracle,所以就打算用序列实现,下面是实现方式:

1.先创建序列

create sequence contact_seq   -- sequence 序列名
minvalue 1001     --最小值
maxvalue 9999    --最大值
start with 1001    --从1001开始计数
increment by 1   -- 每次加几个  
CYCLE              -- 一直累加,循环  
NOCACHE;

这样序列号到达最大值9999的时候又会从1001开始。

2.写sql

select   'S'|| to_char(sysdate,'yyyymmdd') || contact_seq.nextval
from dual;

好了,到此结束,希望对你有所帮助

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 具体来说,随机存取需要满足以下两个条件: 1. 元素在存储空间是连续排列的。 2. 元素的访问是通过元素的序号值来实现的,即元素在存储空间置可以通过序号值计算得到。 在随机存取,元素的访问时间不受元素的置影响,因此可以在O(1)的时间内访问任意元素。这使得随机存取非常适合于需要频繁访问元素的应用场景,如数组和矩阵等数据结构的实现。 ### 回答2: 所谓随机存取,是指可以通过指定元素的序号值和首地址,在O(1)的时间内找到该元素。 随机存取是计算机操作的一个重要概念,主要用于描述对数据进行访问的方式。在计算机内部,数据通常是以连续的存储单元进行存储的,每个存储单元都有一个唯一的地址。这些存储单元可以按照一定的规则进行编号,从而实现对数据的随机访问。 在随机存取,首先需要具备一个存储数据的结构,例如数组或者链表。然后,我们需要知道所要访问的元素在该结构序号值,以及该结构的首地址。通过序号值和首地址,我们就可以通过简单的计算,直接定到所要访问的元素的地址。 相比于顺序存取,随机存取的时间复杂度更低。因为在随机存取,我们只需要通过简单的计算,就可以直接找到指定元素的地址,不需要遍历整个数据结构。而在顺序存取,需要按照顺序从头开始遍历,直到找到所需元素。 总而言之,随机存取是一种高效的数据访问方式,通过指定元素的序号值和首地址,可以在O(1)的时间内直接找到该元素。这种方式大大提高了数据访问的效率,是计算机操作常用的一种存取方式。 ### 回答3: 所谓随机存取,是指在数据结构,通过给定元素的序号值和首地址,能够在O(1)的时间复杂度内找到指定的元素。 在计算机科学,随机存取通常用于描述数组这一数据结构的特性。数组是一种将元素按照一定顺序存放在连续的内存空间的数据结构。数组的首地址即为数组的起始地址,通过计算元素的序号值与首地址的偏移量,可以找到元素在内存的存储置。 对于任意序号值为index的元素,其在内存的存储地址可以通过以下公式计算得出: 地址 = 首地址 + index * 元素大小 其,首地址是数组的起始地址,index为元素的序号值,元素大小表示每个元素所占用的内存空间。 通过上述计算,可以在常数时间内得到指定元素的存储地址,从而可以在O(1)的时间复杂度内找到指定元素。相比于线性查找等时间复杂度较高的查找算法,随机存取提供了更快速的查找效率。 随机存取的特性在许多应用具有重要意义,例如在图像处理,通过随机存取可以快速定到指定像素,在数据库管理系统,也可以通过随机存取快速检索到指定记录等。因此,随机存取被广泛应用于各种计算机科学的领域,提高了数据访问的效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值