需要将2个语句合并为1

好吧,那么它的多空…

有在Excel中运行的2008 r2 SQL查询并驱动数据透视表/图表。 devise这个数据库的一些天才(我的意思是,因为他们可能是1000倍比我聪明)有一个重要的date列在属性中的“date”。 所以你说什么?

好的Excel不会允许数据透视表/表按月分组(即缺less它)。 没有什么在Excel中的作品,如果我格式化单元格等等…这一切都恢复刷新数据等..等等…没有什么可以解决,不能使用macros,因为我的组织不允许它。

所以我的FIX …

将'date'转换为varchar,然后从varchar转换为datetime …很好,看起来像这样:

(CONVERT(varchar(10), [TestDate], 20)) as 'Date1', (CONVERT(datetime, [TestDate], 20)) as 'Date2', 

现在我的问题…

任何人都可以帮助我把这两个声明合并成一个名为“date”的列吗?

现在已经很晚了,我的大脑给了我两杯咖啡…这个新手很赞赏..

编辑:因为它是我显然结束了与'date1'和'date2'标签2列。

你需要嵌套它们。 您将Date1的内容放在Date2中代替列名称。 这将如何在SQL服务器中工作

(CONVERT(datetime,(CONVERT(varchar(10),[TestDate],20)),20))as'Date2'

如果您想删除time部分,您可以使用以下解决scheme避免这些转换:

 DECLARE @TestDate DATETIME; SET @TestDate = GETDATE(); SELECT DATEADD(DAY, DATEDIFF(DAY, 0, @TestDate), 0) AS Sol1 SELECT DATEADD(DAY, DATEDIFF(DAY, {d '1900-01-01'}, @TestDate), {d '1900-01-01'}) AS Sol2 

注意:date时间0 = 1900-01-01