首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求一自动编号处理以上需求,多谢

2013-01-25 
求一自动编号处理以下需求,谢谢--临时接收表select * from TEORD /*SDDATESDRENKHNAMEKHADDESSKHTEllKHTOP

求一自动编号处理以下需求,谢谢


--临时接收表
select * from TEORD 
/*SDDATESDRENKHNAMEKHADDESSKHTEllKHTOPOSKUNAMESKUCQTYZQTYJQTY
2013-01-17 00:00:00.000曹宏广外白云区白云大道北2号卢珍3620791104B2NULL2
2013-01-17 00:00:00.000罗平天意广州市天河区五山路科梁想13751745111A00504NULL4
2013-01-17 00:00:00.000曹宏华思花都区汽车城东冈张美136320491N2N22NULL2
2013-01-17 00:00:00.000曹宏华思花都区汽车城东冈张美136322491N21N211NULL1
2013-01-17 00:00:00.000曹宏耐路花都区汽车城岭西利衡159158148TN21A11912NULL2
2013-01-17 00:00:00.000陈熹嘉可建设六马路33号宜安黄姐836335TN27A20511NULL1
2013-01-17 00:00:00.000吴斌达亿荔湾区浣花路109号东鹏德宝商务中李媛815078粉A0X821NULL1
2013-01-17 00:00:00.000林应茂彩茂名市迎宾二路137号大院江劲NULL废A002001NULL1
2013-01-17 00:00:00.000侯青珍告体育西路103号维多利广场A彭姐381015TN21NULL1NULL1
2013-01-17 00:00:00.000侯威东丽天河区天河北路233号中信广场写郭生875212TN21A0D22NULL2
2013-01-17 00:00:00.000侯威东丽天河区天河北路233号中信广场写郭生875212TN21CA0D21NULL1*/
--查询临时TEORD表插入订单表
insert into ORD select '生成订单号',KHNAME,KHADDESS,KHTEll,KHTOPO from TEORD group by KHNAME,KHADDESS,KHTEll,KHTOPO ORDER BY KHNAME
--查询临时TEORD表插入明细表
insert into ORDT select '生成订单号',KHNAME,SKUNAME,SKU,SUM(CQTY) from TEORD group by KHNAME,SKUNAME,SKU ORDER BY KHNAME

--相同KHNAME的生成同样的"订单号","生成订单号"规则KC+年+月+日+4位流水号(例如:KC130117001)
--最后得出如下结果
/*
订单表
生成订单号KHNAMEKHADDESSKHTEllKHTOPO
KC130117001达亿荔湾区浣花路109号东鹏德宝商务中李媛815078
KC130117002东丽天河区天河北路233号中信广场写郭生875212
KC130117003广外白云区白云大道北2号卢珍362079
KC130117004华思花都区汽车城东冈张美136320491
KC130117005嘉可建设六马路33号宜安黄姐836335
KC130117006茂彩茂名市迎宾二路137号大院江劲NULL
KC130117007耐路花都区汽车城岭西利衡159158148
KC130117008天意广州市天河区五山路科梁想137517451
KC130117009珍告体育西路103号维多利广场A彭姐381015
明细表
生成订单号KHNAMESKUNAMESKU(无列名)
KC130117001达亿粉A0X821
KC130117002东丽TN21A0D22
KC130117002东丽TN21CA0D21
KC130117003广外1104B2
KC130117004华思N2N22
KC130117004华思N21N211
KC130117005嘉可TN27A20511
KC130117006茂彩废A002001
KC130117007耐路TN21A11912
KC130117008天意11A00504
KC130117009珍告TN21NULL1

*/


求相同KHNAME的生成同样的"订单号","生成订单号"规则KC+年+月+日+4位流水号(例如:KC130117001),求代码,菜鸟,最后是存储过程,他这个是半小时接收一次数据!,先谢过!
[解决办法]
DECLARE @a DATE 
SET @a='2013-01-17'

SELECT 'KC'+SUBSTRING(CONVERT(varchar(20), @a, 112),3,LEN(@a))+LEFT('000'+CONVERT(VARCHAR(4),ROW_NUMBER()OVER(ORDER BY GETDATE())),4)

[解决办法]
问题一


select 'KC'+convert(varchar(12),[SDDATE],112)+right(10000+row_number()over(order by KHNAME),4),
KHNAME,KHADDESS,KHTEll,KHTOPO 
from #TEORD 
group by convert(varchar(12),[SDDATE],112),KHNAME,KHADDESS,KHTEll,KHTOPO
ORDER BY KHNAME
[解决办法]
张美    136320491
张美    136322491

电话不相同时,怎么取
[解决办法]
--查询临时TEORD表插入订单表
;WITH t AS (
SELECT 
DENSE_RANK()OVER(ORDER BY KHNAME ASC) AS row
,KHNAME
FROM TEORD 
)
--insert into ORD 


select 'KC'+RIGHT(CONVERT(VARCHAR(8),a.SDDATE,112),6)+RIGHT(1000+t.row,3)'生成订单号',a.KHNAME,a.KHADDESS,a.KHTEll,a.KHTOPO from TEORD AS a,t WHERE a.KHNAME=t.KHNAME group by a.SDDATE,a.KHNAME,a.KHADDESS,a.KHTEll,a.KHTOPO,t.row ORDER BY a.KHNAME

--查询临时TEORD表插入明细表
;WITH t AS (
SELECT 
DENSE_RANK()OVER(ORDER BY KHNAME ASC) AS row
,KHNAME
FROM TEORD 
)
--insert into ORDT 
select 'KC'+RIGHT(CONVERT(VARCHAR(8),a.SDDATE,112),6)+RIGHT(1000+t.row,3)'生成订单号',a.KHNAME,a.SKUNAME,a.SKU,SUM(CQTY) AS CQTY from TEORD AS a,t WHERE a.KHNAME=t.KHNAME group by a.SDDATE,a.KHNAME,a.SKUNAME,a.SKU,t.row ORDER BY a.KHNAME

/*

生成订单号            KHNAME KHADDESS          KHTEll KHTOPO
---------------- ------ ----------------- ------ -----------
KC130117001      天意     广州市天河区五山路科        梁想     137517451
KC130117002      珍告     体育西路103号维多利广场A    彭姐     381015
KC130117003      耐路     花都区汽车城岭西          利衡     159158148
KC130117004      茂彩     茂名市迎宾二路137号大院     江劲     NULL
KC130117005      嘉可     建设六马路33号宜安        黄姐     836335
KC130117006      东丽     天河区天河北路233号中信广场写  郭生     875212
KC130117007      华思     花都区汽车城东冈          张美     136320491
KC130117008      广外     白云区白云大道北2号        卢珍     362079
KC130117009      达亿     荔湾区浣花路109号东鹏德宝商务中 李媛     815078


生成订单号            KHNAME SKUNAME SKU    CQTY
---------------- ------ ------- ------ -----------
KC130117001      天意     11      A0050  4
KC130117002      珍告     TN21    NULL   1
KC130117003      耐路     TN21    A1191  2
KC130117004      茂彩     废       A00200 1
KC130117005      嘉可     TN27    A2051  1
KC130117006      东丽     TN21    A0D2   4
KC130117006      东丽     TN21C   A0D2   2


KC130117007      华思     N2      N2     4
KC130117007      华思     N21     N21    2
KC130117008      广外     11      04B    2
KC130117009      达亿     粉       A0X82  1


*/

热点排行