我想要一个包含以日期命名的列的表。
示例:
SELECT * AS GETDATE() FROM mytable;
从我在互联网上看到的内容来看,似乎我需要使用动态SQL(?)的内容:
DECLARE @dt smalldatetime
SET @dt = GETDATE()
DECLARE @str varchar(100)
SET @str = 'SELECT * AS ' + convert(varchar(100), GETDATE(), 120) + ' FROM mytable'
EXEC(@str);
但这不起作用。说“关键字'AS'附近的语法不正确
答案 0 :(得分:1)
我所要做的就是从SELECT *改为SELECT [我需要的东西]
DECLARE @dt smalldatetime
SET @dt = GETDATE()
DECLARE @str varchar(100)
SET @str = 'SELECT Item AS ' + convert(varchar(100), GETDATE(), 120) + ' FROM mytable'
EXEC(@str);
这有效。
答案 1 :(得分:0)
试试这个:
DECLARE @dt smalldatetime
SET @dt = GETDATE()
DECLARE @str varchar(100)
SET @str = 'SELECT Item AS '+'''' + convert(varchar(100), GETDATE(), 120) +'''' + ' FROM mytable'
EXEC(@str);