存储过程订单号
① 数据库存储过程,根据客户号查询客户的订单信息,并按月统计数量和金额
select sum(a.销售数量),sum(a.销售金额),sum(b.汇款金额) from 表1 a inner join 表2 b
on a.客户名称=b.客户名称 and a.销售日期 between 本月25日 and 26日 group by a.客户名称
剩下年汇总 你在分别select sum()单独查吧
要不你软件支持自定义存储过程 就写一个存储过程 把时间段当参数传进去,再用getdate函数取当前年数 有点费劲,估计得写三维报表 哈哈 你还是简单化吧
② oracle:写一个存储过程,通过输入的参数图书编号及顾客编号,生成一份新的订单和详细订单
写一个纯属过程通过输入的参数图书编号写一个纯属过程,通过输入的参数,图书编号及顾客变化,生成一份新的订单和订单,祥棣在里面,就是先把这个订单编号做一个数据库。
③ 如何创建一个存储过程中的订单号自动生成
sql server中可以用sequence来实现订单号的自动生成。例如创建如下序列:
create sequence orderSeq
as bigint --数据类型
start with 100000 --开始值
increment by 1 --增量
minvalue 1 --最小值
maxvalue 1000000--最大值
no cycle --不循环
cache 3 --设置cache大小为3
这样订单号就会从100000开始每次自增1生成。
④ 急!sql 存储过程生成订单号
set @strs= 'SS'+right(CONVERT(varchar(10),year(getDate())),2)+right('00'+convert(varchar,month(getDate())),2) +right('00'+convert(varchar,day(getDate())),2) + right('0000'+ convert(varchar,@number),4)
上面的你应该理解吧, right('0000'+ convert(varchar,@number),4) 这个可以产生0001 , 记得@number是今天的第几个。其次在插入之前要判断该订单号是否存在(为什么吗,你应该明白,删除会造成订单编号的重复)。
⑤ .编写一个存储过程,要求向销售订单表(sell_order)中插入一条记录,销售单号不能重复,由系统产生,
1.(单号由系统产生),别人应该写了类似生产单号的存储过程吧,你可以看看别人是怎么写的
2.(用户编号、商品编号必须存在),建表时设为not null即可,
3.(并且能及时更新此商品的库存量和销售总量),这个建议用触发器。
⑥ 存储过程是怎么生成单号的
通常我会用最简单的办法:利用SQL数据库的自增ID。
如果是存储过程里面,那么先insert语句增加记录(不写单号或随便给一个),然后用update语句,利用自增id(insert会自动生成,并且绝对不重复)和日期拼接一个字符串,这样就可以了。这里有个需要注意的,如果你没有其它的唯一标识,那么需要使用事务,将insert和update在一个事务里面完成(begin trans/end trans),这样取order by id desc的top1就可以了,否则可能取错。或者用where 单号='预设无效值' 也是可以的,对应更新ID,无论几条记录。
以上是简单办法,如果一定要一个语句会比较复杂,会用到游标或者行号,实际的效率也不高,因此,如果在存储过程中,那么这个方法是最靠谱的。
⑦ SQL 数据库中如何自动生成订单号
SQL server中可以用sequence来实现订单号的自动生成。
例如创建如下序列:
create sequence orderSeq
as bigint --数据类型
start with 100000 --开始值
increment by 1 --增量
minvalue 1 --最小值
maxvalue 1000000--最大值
no cycle --不循环
cache 3 --设置cache大小为3
这样订单号就会从100000开始每次自增1生成。
⑧ 利用存储过程创建订单编号
假设表叫A,假设订单编号叫POId
存储过程可以写成
CREATE PROCEDURE XXX
DECLARE @P_CompanyCode Char (4)
DECLARE @P_NewPOId Char (22) OUTPUT
AS
DECLARE @P_LastId Char (22)
DECLARE @P_SN Char (4)
SELECT @P_LastId=MAX(POId) FROM A
SELECT @P_SN=Right("0000"+CAST(Right(@P_LastId,2) AS Int)+1,4)
SELECT @P_NewPOId=@P_CompanyCode ....
⑨ 订单号是由年月日+0001,年月日系统得来,后面是根据需要自动增长的,并且次日又从0001自动增长的存储过程
假设表名为T,订单号字段为D
declare @maxNO int, @D varchar(13)
select @maxno = max(right(D,4)) from T
where left(D,8) = replace(convert(varchar(10),getdate(),120),'-','')
if @maxno is null
set @D = replace(convert(varchar(10),getdate(),120),'-','') +'0001'
else
set @D = replace(convert(varchar(10),getdate(),120),'-','')
+replace(space(4-len(@maxno)),space(1),'0')+ltrim(str(@maxno+1))
--返回下个编号
select @D
⑩ 存储过程自动生成订单号
Getkey(tableName)就是调用存错过程GetID的方法,@Size是固定的还是应该作为参数传进来?