3

I have something like this

 if object_id('tempdb.#TempHourlyTable') is not null
drop table #TempHourlyTable

 select * into #TempHourlyTable
 from (
         select top 10 * from customers
      )

I get an error like this:

Incorrect syntax near ')'.

My first attempt with temporary tables. So what is the mistake here?

EDIT:
Drop and recreate if temporary table exists. Getting error

Msg 2714, Level 16, State 6, Line 55
There is already an object named '#TempHourlyTable' in the database.

2 Answers 2

7

You need to alias your derived table (subquery), like:

select * into #TEmpTable
 from (
         select top 10 * from customers
      ) as [SomeAlias]

You can also:

select top 10 * 
into #temp
from customers
Sign up to request clarification or add additional context in comments.

3 Comments

Thanks. I got through your approach. Although i have a new question. I edited my current question. Can you take a look at it?Thanks
Need another dot: object_id('tempdb..#TempHourlyTable')
for added info ... it doesn't work without the alias even though alias not necessarily referenced in the select-into. (I tried leaving it out in the interests of streamlined coding). I'll know better next time!
0

try this

insert into #TEmpTable 
select top (10) * from customers

what are you looking to do with the temp. table?

i find using CTEs much more convenient

CTEs

1 Comment

Thanks. I have a new question. I edited my current question. Can you take a look at it?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.