사람은 일반 영어 MSSQL에서 CTE의 대 테이블 변수 대 임시 테이블을 사용 사이의 성능 차이를 침착하게 할 수 있습니다. 임시 테이블을 자주 사용했고 CTE를 사용하기 시작한 이유는 명확한 구문 때문 이었지만 느린 것으로 나타났습니다. 나는 임시 테이블이 시스템 메모리를 사용하고 있기 때문에 빠른 것 같지만 여러 작업을 수행하려고 할 때 병목 현상이 될 수 있습니다. 테이블 변수 나는 거의 사용하지 않았으며 많은 것을 알지 못합니다. 전문가의 조언을 구하고 있습니다.임시 테이블 저장 성능 비교
2
A
답변
0
이 문제는 한 세트의 전달을 수행하기 위해 임시 테이블보다 더 적은 저장 프로 시저를 재 컴파일 될 수 있습니다 온라인 설명서, MSDN 및이 사이트에서 다루고 있습니다. 여기 What's the difference between a temp table and table variable in SQL Server?을 읽을 수있는 임시 테이블과 테이블 변수에 대한
. 많은 경우 임시 테이블은 프로 시저의 재 컴파일을 야기 할 수 있다는 것을 알게 될 것입니다.
CTE를 잘 메모리에 그렇게 필요하지, 내가 임시 테이블 (#table가) 시스템의 DB에 저장되어 믿고 여기 http://blogs.msdn.com/b/craigfr/archive/2007/10/18/ctes-common-table-expressions.aspx
0
CTE는 성능에 중립적입니다. SQL 문 (일반적으로 복잡한 JOIN 또는 필드에 적용된 내장 함수)을 추출하여 개발자를위한 쿼리를 단순화합니다. 데이터베이스 엔진은 CTE를 사용하는 쿼리에 CTE를 바로 삽입합니다. 따라서 CTE 자체가 "느린"것은 아니지만 데이터베이스 테이블이 임시 테이블을 사용하는 쿼리에 대해보다 나은 쿼리 계획을 작성하기 때문에 임시 테이블을 사용하면 성능이 향상되는 것을 알 수 있습니다.
0
관련 문제
- 1. 저장 프로 시저의 임시 테이블
- 2. iPhone에서 SQLite로 임시 테이블 저장
- 3. 임시 테이블 및 SQL SELECT 성능
- 4. SQL Server : 캐시에 임시 테이블 저장
- 5. SQL의 임시 테이블
- 6. 임시 테이블 범위?
- 7. 소프트웨어 구현의 성능 비교
- 8. SQL 서버 임시 테이블 대 커서
- 9. 임시 중급 테이블
- 10. SSIS + 임시 테이블
- 11. Oracle의 임시 테이블 대체 방법
- 12. 임시 테이블에서 테이블 업데이트
- 13. 테이블 변수 SQL Server의 삽입시 성능 저하 저장 프로 시저
- 14. 파생 테이블 또는 임시 테이블
- 15. 공용 테이블 표현식과 임시 테이블
- 16. 임시 테이블 대 테이블 변수
- 17. SQL Server : 인덱스 성능 비교
- 18. 심각한 MySQL 성능 문제 (조인, 임시 테이블, 파일 ... ....)
- 19. mysql 성능 비교
- 20. 현재 PDA의 성능 비교
- 21. 사전의 성능 비교
- 22. IronRuby와 IronPython의 성능 비교
- 23. DataTable 루프 성능 비교
- 24. 데이터베이스 성능 비교
- 25. C# 성능 : 형식 비교 vs. 문자열 비교
- 26. 임시 Javascript 변수에 임시 양식 정보 저장
- 27. 여러 외부 적용 행이있는 큰 테이블 성능 비교
- 28. 저장 임시 파일 이름
- 29. 표에 임시 모델 저장
- 30. 임시 파일 저장
설명 (그리고 그들은 정렬과 같은 특정 속성에 대한 서버 기본값을 상속). 하지만 내가 언급 한 주된 이유는 귀하의 태그가 mssql이 아니라 mysql이라고 말하는 것입니다. – tomfumb
@tomfumb, tempdb 시스템 데이터베이스에 저장됩니다. –