选择进入SQL语句错误 [英] Select Into SQL statement error
本文介绍了选择进入SQL语句错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下SQL代码,用于在创建的表中显示输出。但每次执行它时,它都会给我以下消息:
数据库中已经有一个名为'#OutPutTBL'的对象。
以下是我的代码:
Hi, i have the following SQL codes which is to display the output inside a table created. But every time i execute it, it will give me the following message:
There is already an object named '#OutPutTBL' in the database.
Below are my codes:
DROP TABLE #OutPutTBL
CREATE TABLE #OutPutTBL(TARGETDATE INT, ACTUALDATE INT, PERCENTAGE INT, MONTH VARCHAR(5))
SELECT SUM(CONVERT(INT, TargetDate)) AS TargetDate, SUM(CONVERT(INT, ActualDate)) AS ActualDate, SUM(CONVERT(INT, CompleteRate))/SUM(CONVERT(INT, TargetDate)) AS CompletePercentage, Months
into #OutPutTBL
FROM #FORMULA
GROUP BY Months
SELECT* FROM #OutPutTBL
任何帮助都将受到赞赏。
Any help would be appreciated.
推荐答案
select into将自动生成临时表。
您要么删除临时表的创建表,要么删除部分选择并将插入添加到
The select into will auto generate your temp table.
either you remove the create table of the temp table or you remove the into part of the select and add an insert into
DROP TABLE #OutPutTBL
--CREATE TABLE #OutPutTBL(TARGETDATE INT, ACTUALDATE INT, PERCENTAGE INT, MONTH VARCHAR(5))
SELECT SUM(CONVERT(INT, TargetDate)) AS TargetDate, SUM(CONVERT(INT, ActualDate)) AS ActualDate, SUM(CONVERT(INT, CompleteRate))/SUM(CONVERT(INT, TargetDate)) AS CompletePercentage, Months
into #OutPutTBL
FROM #FORMULA
GROUP BY Months
SELECT* FROM #OutPutTBL
或删除选择
or remove the select into
DROP TABLE #OutPutTBL
CREATE TABLE #OutPutTBL(TARGETDATE INT, ACTUALDATE INT, PERCENTAGE INT, MONTH VARCHAR(5))
insert into #OutPutTBL
SELECT SUM(CONVERT(INT, TargetDate)) AS TargetDate, SUM(CONVERT(INT, ActualDate)) AS ActualDate, SUM(CONVERT(INT, CompleteRate))/SUM(CONVERT(INT, TargetDate)) AS CompletePercentage, Months
FROM #FORMULA
GROUP BY Months
SELECT* FROM #OutPutTBL
为什么不尝试TABLE变量?它们比临时表好得多。
Why don't you try TABLE variables? They are much better then temp tables.
DECLARE @OutputTBL TABLE
(TARGETDATE INT, ACTUALDATE INT, PERCENTAGE INT, MONTH VARCHAR(5))
INSERT INTO @OutputTBL(TARGETDATE, ACTUALDATE, PERCENTAGE, MONTH)
SELECT SUM(CONVERT(INT, TargetDate)) AS TargetDate, SUM(CONVERT(INT, ActualDate)) AS ActualDate, SUM(CONVERT(INT, CompleteRate))/SUM(CONVERT(INT, TargetDate)) AS CompletePercentage, Months
FROM #FORMULA
GROUP BY Months
SELECT* FROM @OutPutTBL
这篇关于选择进入SQL语句错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文