全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SQL自定义函数生成如200101010005格式的订单编号 博客分类: SQL SQLSQL生成如200101010005格式的订单编号、SQLServer| 2009-09-11 14:52:16 阅200101010005前面八位表示当天的年月日,后四位表示当开已经生成的订单编号,每次递增+1 sql语句格式化数字(前面补0)的参考示例: 将一个数字例如20或1使用t-sql语句转换成0020或0001 以下是详细分析: 1、select power(10,4)得到10000 2、select cast(10000+20 as varchar) 将10000转换类型 值为10020 3、select right(10020,4) 从右边取4个字符得到0020 合并 select right(cast(power(10,4) as varchar)+20,4) 得到0020 接下来生成订单号: DECLARE Order_id decimal(12,0) DECLARE Date varchar(8) declare Index int -获取当前订单表中的最新订单号 select Order_id = max(order_id) from tblorder -获取当前日期XXXXXXXX如20010101 select Date = CONVERT(varchar(8), GETDATE(),112) -获取当前日期和现有订单的日期匹配如现在的最新订单号为:200101010005 -今天的日期也是20010101 -那么Index = 1 select Index = charindex(Date, Order_id) -那么后四位则是200101010005的最后四位加1 Cast(right(Cast(Right(Order_id,4) as decimal) + 1 + 10000,4) as varchar(12) -否则就是从头开始0001 select Order_id = Date + case when Index = 1 then Cast(right(Cast(Right(Order_id,4) as decimal) + 1 + 10000,4) as varchar(12) else 0001 end Sql自定义函数 Java代码1. createfunctiondbo.CreateOrderID() 2. returnsdecimal(12,0) 3. as 4. begin 5. DECLAREOrder_iddecimal(12,0) 6. DECLAREDatevarchar(8) 7. 8. -获取当前订单表中的最新订单号 9. selectOrder_id=max(order_id)fromtblorder 10. 11. -获取当前日期XXXXXXXX如2001010112. selectDate=CONVERT(varchar(8),GETDATE(),112) 13. 14. selectOrder_id=Date+casewhencharindex(Date,Order_id)=1then 15. Cast(right(Cast(Right(Order_id,4)asdecimal)+1+10000,4)asvarchar(12) 16. else0001end 17. 18. returnOrder_id19. endcreate function dbo.CreateOrderID()returns decimal(12,0)asbegin DECLARE Order_id decimal(12,0) DECLARE Date varchar(8) -获取当前订单表中的最新订单号 select Order_id = max(order_id) from tblorder -获取当前日期XXXXXXXX如20010101 select Date = CONVERT(varchar(8), GETDATE(),112) select Order_id = Date + case when charindex(Date, Order_id) = 1 then Cast(right(Cast(Right(Order_id,4) as decimal)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年河大版(三起)(新教材)小学信息科技第三册期末质量检测卷附答案(共三套)
- 文献检索与科技写作
- 浅谈电力电子技术在新能源方面的应用
- 新华社国内笔试题
- 如何加强成本管理提高企业效益
- 英语四级阅读常见问题及解决对策
- 毕业论文导师的评语集锦
- 煤炭行业的价值链与供应链
- 电能质量及其改善措施的研究
- C公司原材料采购现状及问题分析毕业论文(可编辑)
- 2026年山西电力职业技术学院单招职业适应性测试题库及答案1套
- D打印技术在教育模型制作中的应用与评估报告
- 《2025患者身份识别管理标准》解读
- 钢铁企业能源知识培训课件
- 2025年国企招聘考试真题及答案
- 信息通信网络机务员(数据中心运行维护管理员 )国家职业标准(征求意见稿)
- 2025-2030乳品企业数字化转型现状及智能工厂建设趋势报告
- 浮筑地面施工方案
- 照明工程维护与保养工作方案
- 应急预案评审申请
- 2025四川攀枝花市仁和区事业单位秋季引才19人备考考试题库附答案解析
评论
0/150
提交评论