日期:2014-05-20  浏览次数:20866 次

急!SQL高手请进:通过查询组合字符串的问题!
急!SQL高手请进:通过查询组合字符串的问题!

表t   有三个字符串型字段   YYYY,MM,DD.分别代表年、月、日

用什么SQL查询一下,把把三个字段组合成日期后显示的值相加后显示?
要求
如:
YYYY   MM   DD
2004
2005   12   7
2008   8


查询后显示:

2004.7
2005.12.7
2008.8

谢谢!


------解决方案--------------------
SELECT CAST(YYYY, NVARCHAR) + CASE WHEN MM IS NULL THEN ' ' ELSE '. ' + CAST(MM, NVARCHAR) + CASE WHEN DD IS NULL THEN ' ' ELSE '. ' + CAST(DD, NVARCHAR)
------解决方案--------------------
SELECT CAST(YYYY, NVARCHAR) + CASE WHEN MM IS NULL THEN ' ' ELSE '. ' + CAST(MM, NVARCHAR) END + CASE WHEN DD IS NULL THEN ' ' ELSE '. ' + CAST(DD, NVARCHAR) END
------解决方案--------------------
Select (YYYY + '. ' + MM + '. ' + Case When DD Is Null Then ' ' Else DD End) As FieldName From TableName