急急如律令 SQL版块没人 帮顶有分

昨日浮云 2010-11-22 03:50:09
作息编号
2010831ZX001
2010831ZX002
前面是时间 20100831 当前日期
后面是zx 固定
在后面是001 002 加一
在插入的时候如何插入2010831ZX003 这是自动的 不是人为的输入
如插入20101122ZX001

http://topic.csdn.net/u/20101122/14/c07bc3d7-acb8-4cbd-9540-5bf0b745281b.html?seed=1794045667&r=70049860

这是数据库版块
...全文
156 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
mjp1234airen4385 2010-11-23
  • 打赏
  • 举报
回复
思路有了,代码也有了。整理一下应该可以自己搞定了。
昨日浮云 2010-11-22
  • 打赏
  • 举报
回复
先对于四楼 一楼确实强大
在路上20130607 2010-11-22
  • 打赏
  • 举报
回复
1楼 强大
Heaven_cs 2010-11-22
  • 打赏
  • 举报
回复
在学习呢!
昨日浮云 2010-11-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wangsm313 的回复:]
select
case when b.nowDate=left(a.buy_code,8)
then left(a.buy_code,10)+
(case len(convert(varchar(3),(convert(int,right(a.buy_code,3))+1)))
when 1 then '00'+convert(varchar(3),(co……
[/Quote]


牛人 明天早上给分
wangsm313 2010-11-22
  • 打赏
  • 举报
回复
select
case when b.nowDate=left(a.buy_code,8)
then left(a.buy_code,10)+
(case len(convert(varchar(3),(convert(int,right(a.buy_code,3))+1)))
when 1 then '00'+convert(varchar(3),(convert(int,right(a.buy_code,3))+1))
when 1 then'0'+convert(varchar(3),(convert(int,right(a.buy_code,3))+1))
else convert(varchar(3),(convert(int,right(a.buy_code,3))+1)) end
)
else b.nowDate+'ZX001' end as code
from (select max(buy_code) as buy_code from fam_print_buy) a,
(select Convert(varchar(36),getdate(),112) as nowDate)b
昨日浮云 2010-11-22
  • 打赏
  • 举报
回复
我是新手 不会附加 请trim()说说
q107770540 2010-11-22
  • 打赏
  • 举报
回复

select right('2010831ZX001',3) --001

得到001
然后转成数字型

select cast(right('2010831ZX001',3) as int) --1

然后再加1 即可

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧