34,587
社区成员
发帖
与我相关
我的任务
分享
create table #
(y int, m int, d int, ymd as cast(ltrim(y)+'-'+ltrim(m)+'-'+ltrim(d) as datetime));
insert into # (y,m,d) values(1999,12,1);
insert into # (y,d) values(1999,1);
select * from #;
/*
1999 12 1 1999-12-01 00:00:00.000
1999 NULL 1 NULL
*/
declare @year varchar(10)
set @year='2010'
declare @month varchar(10)
set @month='01'
declare @day varchar(10)
set @day='01'
select @year+'-'+@month+'-'+@day as theday
go
declare @year varchar(10)
set @year='2010'
declare @month varchar(10)
set @month='01'
declare @day varchar(10)
set @day=null
select @year+'-'+@month+'-'+@day as theday
create table # (y int, m int, d int);
insert into # (y,m,d) values(1999,12,1);
insert into # (y,d) values(1999,1);
select cast(ltrim(y)+'-'+ltrim(m)+'-'+ltrim(d) as datetime) from #;
/*
1999-12-01 00:00:00.000
NULL
*/