선데이서버.gif

해골서버.gif

투데이모아.gif

가가구바람.gif

광고베너.gif


♨신규 홍보♨



  1. 도리toS 279,970
  2. 동수칸 275,269
  3. 투혼v 272,558
  4. 깡따구 234,473
  5. 타이갓 219,722
  6. 스쿼드 190,179
  7. 농민2 160,220
  8. 제이스토리 144,197
  9. 쿠악카미 139,609
  10. 하사 128,898
  11. 코난 124,503
  12. 머니 112,133
  13. 우리집또털어 106,694
  14. 키호 105,449
  15. 두현베어스 93,195
  16. 뚜루룽이 89,153
  17. ZicP 88,468
  18. 묻었다 87,645
  19. godwk 87,563
  20. 환장하겠네 85,792
  21. 나로네 82,034
  22. Ophelia 77,180
  23. 김감김 74,082
  24. RoseM 72,039
  25. 어려서부터 72,006
  26. wkdfj234d 71,312
  27. 마티쿄 71,184
  28. 리구스 70,995
  29. 개나리 69,219
  30. 치즈돈가스덮밥 67,571

huuon2.gif

광고베너.gif

♨신규 게시물♨



♨신규 댓글♨


MSSQL 임시,변수 테이블 적용 하기

박효성2020.09.21 17:58조회 수 22댓글 0

    • 글자 크기

SQL 임시,변수 테이블 사용

 

데이터 베이스에서 복잡한 쿼리를 사용하다 보면 조인으로 너무나 힘든 부분들이 있습니다. 

 

그래서 찾아 낸것이 테이블을 임시로 생성해서 사용하는것을 찾아 보았습니다. 

 

임시 Table

 

임시 Table이란 말 그대로 tempdb에 임시적으로 만들어지는 Table로서 특징에 따라 지역임시Table과 전역임시Table 두가지로 나눌 수 있습니다.

 

지역임시Table은 Table이 생성되는 Session이 끝나면 자동으로 삭제됨니다. 예를들어 Procedure내에서 지역임시Table이 생성되었을때 해당 Procedure가 종료되면 Drop Table을 사용하지 않더라도 자동으로 삭제되는 것입니다.

 

반면 전역임시 Table은 Table을 사용(참조)하고 있는 모든 작업이 종료되어야만 삭제되는 특징을 가지고 있습니다. 활용되는 범위로 따진다면 전역임시Table이 더 큰 범위를 안고 있는 것입니다.

 

임시Table을 생성하려면 Table생성시 이름앞에 #을 추가함으로써 이 Table이 임시Table임을 알려줘야 합니다.(#이 하나 쓰이면 지역임시Table, #이 두개(##)가 쓰이면 전역임시Table이 됩니다.)

 

다음은 임시Table의 활용예제입니다.

 

출처: http://lab.cliel.com/entry/SQL-임시-Table과-변수-Table [CLIEL LAB]

 

Create Table #TEST1(

 Name   Varchar(50)

)

 

Insert Into #TEST1

Select *

From TEST2

 

와 같이 temp_db 에 저장되어 사용되는 테이블을 만들어 임시로 데이터를 집어 넣고 사용할수 있습니다. 

 

지역임시Table은 해당 세션안에서만 유효한 것입니다.

 

다른 세션에서는 #TEST1 을 가져다 테이블을 사용할수 없습니다. 

 

만약 사용하려면 테이블을 만들때 ##TEST2 로 만들면 됩니다. 

 

Table변수

 

Table변수는 Meory상에 일시적으로 생성되는 Table로 Query가 실행되는 Session안에서만 유효하며 일반 변수와 같습니다. 또한 Table변수는 Primary Key, Null, Check 이 세가지 제약조건만 허락하며 Table변수선언시 사용자 데이터형식은 사용할 수 없습니다.

 

출처: http://lab.cliel.com/entry/SQL-임시-Table과-변수-Table [CLIEL LAB]

 

Declare @TEST1 Table(

Name   nVarchar(50)

)

 

Insert Into @TEST1 

Select *

From TEST2

 

Select * From @Temp1

 

위와 같이 사용하여 쓸수 있어 복잡한 쿼리를 중간에 썸머리 하여 사용할때 유용하게 사용할수도 있습니다. 

 

    • 글자 크기
[MS-SQL] 커서(Cursor) 사용하기 (by 박효성) SQL JOIN 사용법 및 개념 (by 박효성)

댓글 달기

번호 제목 글쓴이 조회 수
55 SQL JOIN 사용법 및 개념22 박효성 77
54 [MS-SQL] 커서(Cursor) 사용하기 박효성 21
MSSQL 임시,변수 테이블 적용 하기 박효성 22
52 SQL JOIN 사용법 및 개념 박효성 24
51 sesion.sql_child_number, 박효성 11
50 mysql stored procedires visual stdio 로 디버깅 하기  박효성 24
49 SQL(Structured Query Language) 박효성 18
48 [PHP] 간단한 디스코드 Push 시스템 완전 최소로 구현하기 (매우 간단)3 MJ 234
47 USBWebserver v8.6.2 가장 가벼운 포터블 웹서버4 jhon 224
46 Code 수정 유틸 ollydbg 사용법2 뿌르뿌르 215
45 메이플 모작 진행상황 (툴)9 sacyz1n 772
44 브릿지 패턴 (Bridge Pattern)5 sacyz1n 170
43 디스코드 봇 만들기 [Create Discord Bot] - 14 토끼린 1013
42 파이썬을 이용한 간단한 메이플스토리 만들기(6/20) - 로그인 기능 수정및 다음화면 이미지 넣기8 지금몇시지 949
41 03. 크레이지 아케이드 만들기 (타이머 매니저, 싱글톤 패턴)5 sacyz1n 511
40 02. 크레이지 아케이드 만들기 (PeekMessage, 게임 구조)3 sacyz1n 277
39 01. 크레이지 아케이드 만들기 (윈도우 창 보정,)3 sacyz1n 235
38 00. 크레이지 아케이드 만들기 (Win API 소개)7 sacyz1n 484
37 파이썬을 이용한 간단한 메이플스토리 만들기(5/20) - 회원가입 및 로그인 기능 수정 및 다음 화면 만들기2 지금몇시지 460
36 파이썬을 이용한 간단한 메이플스토리 만들기 공지(포토샵 디자이너 모집)2 지금몇시지 290
첨부 (0)

서버에 요청 중입니다. 잠시만 기다려 주십시오...