T-SQL: Select Into

September 11, 2007 17:59 by WebStoryMaker

INSERT 문을 사용하다가 때로는 SELECT 로 읽어들인 문을 삽입하고 싶은 생각을 한 적이 있을 것이다.
예로 Table_One 을 생성한 뒤에 아래의 코드를 사용하여 데이터를 다른 테이블에서부터 가져오는 경우이다.

흔히 생각하는 코드 (Language : sql)

   1:  INSERT INTO Table_One (ColumnOne, ColumnTwo, ColumnThree)
   2:  SELECT ColumnOne, ColumnTwo, ColumnThree
   3:  FROM Table_Two
   4:  WHERE ColumnID = 1

그런데 이 문을 SELECT INTO 를 사용하게 되면 간략하게 줄일 수 있으며 따로 테이블을 생성할 필요가 없다. 왜냐하면 SELECT INTO 를 사용하여 생성된 테이블은 고유의 테이블과 같은 역할을 하기 때문이다.

SELECT INTO문 (Language : sql)

   1:  SELECT ColumnOne, ColumnTwo, ColumnThree INTO Table_One
   2:  FROM Table_Two
   3:  WHERE ColumnID = 1

위의 예제문으로 미리 Table_One 을 생성할 필요 없이 하나의 SQL Query 로 생성과 삽입을 할 수 있게 하였다. Local DB 에 생성을 하기를 원치 않는다면 Table_One 대신 #Table_One 또는 ##Table_One 을 사용하여 TempDB 에 저장을 할 수도 있다. # 한개 사용은, Local Temporary object 를 말하며 ## 는 Global Temporary Object 을 말한다. TempDB는 Connection 이 끊어지게 되면 사라지는 데이터베이스 이므로 Stored Procedure 를 생성할 때에 많이 쓰인다.

Structured Query Langauge 는 이와 같이 Syntax 가 어려운 것은 아니지면 논리적인 사고를 필요로 한다.


Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: ,
Categories: Database
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Related posts

Add comment


(Will show your Gravatar icon)  

  Country flag

[b][/b] - [i][/i] - [u][/u]- [quote][/quote]



Live preview

November 20. 2008 15:12