SQL Server 前缀 自增

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server 前缀 自增相关的知识,希望对你有一定的参考价值。

通过标识规范可以设置一个数字自增来统计一个表里一共有多少的数据;

请问,有没有办法给自增加上前缀;
比如:我想要知道每个月插入了多少条记录
我想要用某个字段[Count]来描述:"ABC140400001"表示该月第一条记录
后面当月插入的数据,该字段[Count]自增如:"ABC140400002","ABC140400003", "ABC140400004"。。。
到下个月,又从"ABC140500001"开始自增
有何办法?万分感谢!

1、设置一个自增列,默认值使用一个自定义函数名
2、创建自己的自定义函数,内容是依据当前数据内容和当前数据间获得自增列的值
3、设置这个自增列为非空,向表里添加数据的时候,不要指定这个列的值
4、OK了追问

我的SQL版本: 2008 R2
1、创建一个自增列,自增列的类型是什么,要设置为varchar(xx)吗?应该不能够再设置为bigint了吧?
2、默认值指的是 列属性-常规-默认值或绑定,然后在后面填上自定义的函数名吗
3、怎么创建自己的自定义函数,在哪里写?
万分感谢~

追答

1、必须使用Varchar类型,因为你的编号里还有字母
2、就是默认值要绑定
3、自定义函数,得自己手写

追问

2、怎么绑定?在默认值或绑定后面填上一个函数名吗?
比如:func(); 是这样吗?还是只填 func
3、要用Transact-SQL来写函数麽。。。语法不会。。。用其他语言写这个函数的话会写。。
写这个很费时间吗?您有空的话,可不可以帮忙写一个?万分感谢!

参考技术A 可以用触发器实现

SQL Server查询时添加一列连续的自增列

在SQL Server数据库中表信息会用到Identity关键字来设置自增列。但是当有数据被删除的话,自增列就不连续了。如果想查询出这个表的信息,并添加一列连续自增的ID,可用如下查询语句:

select Row_Number() over ( order by getdate() ) as init , * from 表名

以上是关于SQL Server 前缀 自增的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 SQL Server 中的前缀表?

带有未声明前缀的 SQL Server Xml 查询

Index的“最左前缀规则”是不是适用于SQL Server?

SQL SERVER 索引名前缀代表的意思

在 Sql Server 中使用“Sys”为系统或通用表名添加前缀是不是正常?

基于mysql的单据号生成(前缀+日期+自增id+后缀)