34,587
社区成员
发帖
与我相关
我的任务
分享
DECLARE @t TABLE (
d DATETIME
)
INSERT INTO @t VALUES ('2015-01-01')
INSERT INTO @t VALUES ('2015-10-01')
SELECT d
--convert 120 本身就能生成 yyyy-MM-dd
,REPLACE(CONVERT(CHAR(7),d,120),'-','') AS new
--只适合于SQL Server2012 或以上版本
,FORMAT(d,'yyyyMM') AS new2
FROM @t
/*
d new new2
2015-01-01 00:00:00.000 201501 201501
2015-10-01 00:00:00.000 201510 201510
*/
create table #t(NF int ,zc int)
insert into #t(NF,zc)
select 2015,1 union all
select 2015,3 union all
select 2015,10
select NF,
zc,
rq1=rtrim(NF)+right('00'+rtrim(zc),2)
from #t
/*
NF zc rq1
----------- ----------- ----------------
2015 1 201501
2015 3 201503
2015 10 201510
(3 row(s) affected)
*/
select RQ, NF, cast(NF AS VARCHAR(4)) + right('0' + CAST(zc as varchar(2)), 2) as rq1 from ZSDRJSK..ZS_BASE_ZCB