0
我有以下查询是通过传递月份名称和年份给出月份的最后一天,但不知道如何以类似的方式获得第一天。月份问题的最后一天
declare @month int, @year int
select @month=1,@year=2011
select Convert(varchar(20),dateadd(year,@year-1900,dateadd(month,@month,0)-1), 105)
我有以下查询是通过传递月份名称和年份给出月份的最后一天,但不知道如何以类似的方式获得第一天。月份问题的最后一天
declare @month int, @year int
select @month=1,@year=2011
select Convert(varchar(20),dateadd(year,@year-1900,dateadd(month,@month,0)-1), 105)
我没有与SQL Server的经验,而是根据你的代码,我想答案会是这样的:
declare @month int, @year int
select @month=1,@year=2011
select Convert(varchar(20),dateadd(year,@year-1900,dateadd(month,@month-1,0)), 105)
在日期时间域保持它,发现第1天之后一个月,然后减去1天
SELECT
dateadd(day, -1, dateadd(year, @year-1900, dateadd(month, @month, 0)))
与CAST或varchar几乎所有事情都是不确定的,而不是语言/ @ DATEFORMAT安全
感谢工作像一个魅力:) – user342944 2011-01-08 22:00:09