
设计sql编号,要求每添加一条数据,自动给改数据添加一个编号
一种是现金,一种是刷卡。2种结算方式有2种收款单。现金方式时单据编号:sk-000-2011-01-15-00001,其中“2011-01-15”为系统当前日期。刷卡结算...
一种是现金,一种是刷卡。2种结算方式有2种收款单。现金方式时单据编号:sk-000-2011-01-15-00001,其中“2011-01-15”为系统当前日期。刷卡结算单据编号:sk-001-2011-01-15-00001,其中“2011-01-15”为系统当前日期。
如何用sql语句实现。
实在是没有分数了
declare @haoma nvarchar(50)
set @haoma=''
if @leixing='现金'
begin
select
case when A.编号 is null then 'sk-000-'+cast(year(getdate()) as nvarchar)+'-'+cast(month(getdate()) as nvarchar)+'-'+cast(day(getdate()) as nvarchar)+'-00001'
else 'sk-000-'+cast(year(getdate()) as nvarchar)+'-'+cast(month(getdate()) as nvarchar)+'-'+cast(day(getdate()) as nvarchar)+'-'+cast(A.编号 as nvarchar)
end
as 编号
from (select right('00000'+cast(cast(right(max(单据编号),5) as int)+1 as nvarchar),5) as 编号 from 本班收款交费记录 where 单据编号 like 'sk-000%') as A
end
end
select @haoma as 单据编号 展开
如何用sql语句实现。
实在是没有分数了
declare @haoma nvarchar(50)
set @haoma=''
if @leixing='现金'
begin
select
case when A.编号 is null then 'sk-000-'+cast(year(getdate()) as nvarchar)+'-'+cast(month(getdate()) as nvarchar)+'-'+cast(day(getdate()) as nvarchar)+'-00001'
else 'sk-000-'+cast(year(getdate()) as nvarchar)+'-'+cast(month(getdate()) as nvarchar)+'-'+cast(day(getdate()) as nvarchar)+'-'+cast(A.编号 as nvarchar)
end
as 编号
from (select right('00000'+cast(cast(right(max(单据编号),5) as int)+1 as nvarchar),5) as 编号 from 本班收款交费记录 where 单据编号 like 'sk-000%') as A
end
end
select @haoma as 单据编号 展开
2个回答
展开全部
在数据库加个字段存储编号啊, 每次把上次的编号+1 就行了 (最多加个时间判断,超过23:59:59 则编号归1) 单据上的编号由2个字段组成就是
追问
我是很菜很菜的新手。不会存储过程。~~帮忙写写好不~~

2025-03-12 广告
以下是虚拟筛选的简要流程图说明:1. **调研靶点**:确认是否有参考药物与结合模式信息。2. **建立模型**:基于靶点蛋白结构,参考已有药物结合信息或预测药物结合模式。3. **选择库源**:从多样性化合物库、上市药物分子库等中挑选合适...
点击进入详情页
本回答由MCE 中国提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询