学习笔记
需求:职工表职工编号“000001”作为职工表主键,要实现每次插入一条记录时自动递增一个职工编号。
自动递增这个属性只对数值类型有作用,“000001”显然不是数值类型。
所以实现思路是:
将职工编号设置为int类型,从1开始递增,如果前端页面需要显示6位的职工编号,就进行如下操作
select RIGHT('000000'+CAST(employeeID as varchar(6)),6) as 'EmployeeID' from Employee;
- SQL的Right语句表示从右边开始截取指定位数的字符串
- CAST语句表示数据类型转换,将employeeID的数据类型转换为varchar(6)的类型
- 转化后的类型+‘000000’ 连接字符串之后截取右边6位
- as ‘EmployeeID’ ,取个别名
感谢这篇博客:
https://www.csdn.net/gather_21/MtTaUg1sNjA3OS1ibG9n.html