我在不同的列中有月份和年份,我想在两点(即开始日期和结束日期)之间进行记录。我只有一个月和一年。我发现的一种解决方案是将日期、月份组合转换为日期。假设我有
Start month : 3 Start year : 2010
End month : 6 End year : 2013
我想将它们转换为
start date = 01-03-2010
End date = 31-06-2013
任何解决方案?
最佳答案
以下是通过月份和年份查找上个月和第一个日期的方法
DECLARE @month varchar(2)
DECLARE @year varchar(4)
月份的第一个日期
set @month='03'
set @year='2010'
select cast(@year + '-' + @month + '-01' as date)
输出
2010-03-01
每月最后一天 (将您的月份增加 1,然后减去 1 天)
set @month='06'
set @year='2013'
select CAST(cast(@year + '-' + Cast(cast(@month as int )+1 as varchar(20)) + '-01' as datetime)-1 as DATE)
输出
2013-06-30
关于sql - 在 SQL 中将月份和年份组合转换为日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22138553/