在SQL语句中将两个整数附加到另一个整数的好方法?

时间:2011-12-13 21:24:14

标签: sql-server-2005 tsql

我们正在使用SQL Server 2005,并希望将两个整数附加到另一个整数中。现在我们正在总结一个日期字段的月份和年份,这实际上并不是我们想要的。相反,我们想将它们附加在一起,但保留一个整数。

以下是我们现在所拥有的:

SELECT 
       YEAR( MeetingDate) + MONTH( MeetingDate) AS DateGroup

我们希望DateGroup阅读20118,20119,201110,2011111等。试着学习一些好方法。

2 个答案:

答案 0 :(得分:4)

考虑使用一个数字月份的前导零,即201108而不是20118,那么它很容易:

select
   year(MeetingDate) * 100 + month(MeetingDate) as DateGroup

否则你必须以不同的方式对待几个月:

select
   year(MeetingDate) * case when month(MeetingDate) < 10 then 10 else 100 end
   + month(MeetingDate) as DateGroup

答案 1 :(得分:2)

将整数转换为varchar,然后将它们一起添加。

select cast(cast(year(MeetingDate) as varchar(4)) + 
            cast(month(MeetingDate) as varchar(2)) as int) as dategroup