[SQL] SQL에서 임시 테이블 만들기
SQLSQL에서 임시 테이블 만들기
나는 임시 테이블을 만들려고하고 그 특정 register_type에 대한 선택 데이터 만. 나는이 쿼리를 작성했지만 작동하지 않습니다
$ CREATE TABLE temp1
(Select
egauge.dataid,
egauge.register_type,
egauge.timestamp_localtime,
egauge.read_value_avg
from rawdata.egauge
where register_type like '%gen%'
order by dataid, timestamp_localtime ) $
나는 PostgreSQL을 사용하고 있습니다. 당신은 쿼리에 어떤 문제가 있는지 말해 줄래?
해결법
-
==============================
1.: 또한 임시 (TEMP) 테이블 작동 - 당신은 아마 TABLE AS를 생성합니다
: 또한 임시 (TEMP) 테이블 작동 - 당신은 아마 TABLE AS를 생성합니다
CREATE TEMP TABLE temp1 AS SELECT dataid , register_type , timestamp_localtime , read_value_avg FROM rawdata.egauge WHERE register_type LIKE '%gen%' ORDER BY dataid, timestamp_localtime
이 그것으로 임시 테이블 및 복사 데이터를 생성한다. 데이터의 정적 스냅 샷, 당신을 마음. 그냥 일반 테이블처럼,하지만 temp_buffers가 충분히 높은 설정되어있는 경우 RAM에 상주는, 그것의 끝에서 현재 세션 및 다이 내에서만 볼 수 있습니다. ON으로 DROP을 COMMIT 만들 때 트랜잭션의 끝에서 죽는다.
임시 테이블은 같은 이름의 다른 보이는 테이블을 숨기고, 기본 스키마 검색 경로에 먼저하지 않는 한 스키마 규정 :
완전히 다른 이야기를 - 동적를 원한다면, 당신은 CREATE VIEW를 찾고있을 것이다.
표준 SQL 지원을 또한 정의하고, 또한 포스트 그레스 : SELECT INTO를. 그러나 그것의 사용은 실망입니다 :
이 두 번째 구문 변형이 필요 정말 없으며, SELECT INTO는 SQL 구문이 결과적으로 수 없습니다 plpgsql에 할당하는 데 사용됩니다.
관련 :
단지 다른 테이블의 복사본 구조없이 데이터 TABLE LIKE (...)를 작성 :
당신은 CTE에서 (후 폐기) 단지 하나의 쿼리의 목적으로 "파생 테이블을"은 "임시"테이블이 필요하거나 하위 쿼리는 상당히 적은 오버 헤드가 장착되어있는 경우 :
-
==============================
2.http://www.postgresql.org/docs/9.2/static/sql-createtable.html
http://www.postgresql.org/docs/9.2/static/sql-createtable.html
CREATE TEMP TABLE temp1 LIKE ...
from https://stackoverflow.com/questions/15691243/creating-temporary-tables-in-sql by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 스크립트 디스크에 VARBINARY 데이터를 저장하기 (0) | 2020.04.25 |
---|---|
[SQL] 다른 테이블 칼럼에 기초하여 계산 열의 수식 (0) | 2020.04.25 |
[SQL] PostgreSQL을의 범위에서 날짜 목록을 얻기 (0) | 2020.04.25 |
[SQL] SQL은 월 및 연도에 의해 그룹화 (0) | 2020.04.25 |
[SQL] 두 날짜 사이의 개월 (0) | 2020.04.25 |