- 카테고리:
DYNAMIC_TABLE_REFRESH_HISTORY¶
이 테이블 함수는 동적 테이블 의 각 새로 고침(완료 및 실행 중)에 대한 정보를 반환합니다.
이 테이블 함수는 진행 중인 모든 새로 고침은 물론이고, 현재 시간으로부터 1일 이내의 REFRESH_VERSION을 가진 모든 새로 고침도 반환합니다.
구문¶
DYNAMIC_TABLE_REFRESH_HISTORY(
[ DATA_TIMESTAMP_START => <constant_expr> ]
[ , DATA_TIMESTAMP_END => <constant_expr> ]
[ , RESULT_LIMIT => <integer> ]
[ , NAME => '<string>' ]
[ , NAME_PREFIX => '<string>' ]
[ , ERROR_ONLY => { TRUE | FALSE } ]
)
인자¶
모든 인자는 선택 사항입니다. 아무런 인자도 제공되지 않으면 계정의 모든 동적 테이블에서 100회의 새로 고침이 반환됩니다.
DATA_TIMESTAMP_START => constant_expr
, .DATA_TIMESTAMP_END => constant_expr
새로 고침이 발생한 시간 범위(TIMESTAMP_LTZ 형식)입니다.
시작 버전과 종료 버전이 모두 지정되지 않은 경우 기본 범위는 과거 날짜가 됩니다.
종료 버전이 지정되지 않은 경우, CURRENT_TIMESTAMP 가 범위의 끝으로 사용됩니다.
시작 버전을 지정하지 않은 경우, 범위는 DATE_TIMESTAMP_END가 시작되기 1일 전에 시작됩니다.
RESULT_LIMIT => integer
함수가 반환하는 최대 행 수를 지정하는 숫자입니다.
일치하는 행의 수가 이 제한보다 큰 경우, 지정된 제한까지는 가장 최근에 종료된 새로 고침(그리고 여전히 실행 중인 새로 고침)이 반환됩니다.
범위:
1
~10000
기본값:
100
.NAME => string
동적 테이블의 이름입니다.
이름은 작은따옴표로 묶어야 하며 대/소문자를 구분하지 않습니다.
정규화되지 않은 이름(
dynamic_table_name
), 부분적으로 정규화된 이름(schema_name.dynamic_table_name
) 또는 정규화된 이름(database_name.schema_name.dynamic_table_name
)을 지정할 수 있습니다.오브젝트 이름 확인에 대한 자세한 내용은 오브젝트 이름 확인 섹션을 참조하십시오.
이 함수는 이 테이블에 대한 새로 고침을 반환합니다.
NAME_PREFIX => string
동적 테이블의 접두사입니다.
이름 접두사는 작은따옴표로 묶어야 하며 대/소문자를 구분하지 않습니다.
이 함수는 이 접두사로 시작하는 이름을 가진 테이블에 대한 새로 고침을 반환합니다.
이 인자를 사용하여 특정 데이터베이스 또는 스키마의 동적 테이블에 대한 새로 고침을 반환할 수 있습니다.
ERROR_ONLY => TRUE | FALSE
TRUE로 설정 시, 이 함수는 실패하거나 취소된 새로 고침만 반환합니다.
출력¶
이 함수는 다음 열을 반환합니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
NAME |
TEXT |
동적 테이블의 이름입니다. |
SCHEMA_NAME |
TEXT |
동적 테이블을 포함하는 스키마의 이름입니다. |
DATABASE_NAME |
TEXT |
동적 테이블을 포함하는 데이터베이스의 이름입니다. |
STATE |
TEXT |
동적 테이블의 새로 고침 상태입니다. 다음 중 한 가지 상태일 수 있습니다.
|
STATE_CODE |
TEXT |
새로 고침의 현재 상태를 나타내는 코드입니다. |
STATE_MESSAGE |
TEXT |
새로 고침의 현재 상태에 대한 설명입니다. |
QUERY_ID |
TEXT |
동적 테이블의 결과를 생성한 SQL 문의 ID입니다. |
DATA_TIMESTAMP |
TIMESTAMP_LTZ |
새로 고침이 평가된 시점의 트랜잭션 타임스탬프입니다. (이는 실제 새로 고침 시간보다 약간 이전 시점일 수 있습니다.) 이 타임스탬프 이전에 도착한 기본 오브젝트의 모든 데이터는 현재 동적 테이블에 포함되어 있습니다. |
REFRESH_START_TIME |
TIMESTAMP_LTZ |
새로 고침 작업이 시작된 시간입니다. |
REFRESH_END_TIME |
TIMESTAMP_LTZ |
새로 고침이 완료된 시간입니다. |
COMPLETION_TARGET |
TIMESTAMP_LTZ |
동적 테이블에 대한 TARGET_LAG 매개 변수에서 지연을 유지하기 위해 이 새로 고침을 완료해야 하는 시간입니다. 이전의 REFRESH_VERSION + TARGET_LAG와 같습니다. |
QUALIFIED_NAME |
TEXT |
동적 테이블의 그래프에 표시되는 동적 테이블의 정규화된 이름입니다. 이를 사용하여 출력을 다음의 DYNAMIC_TABLE_GRAPH_HISTORY 함수의 출력과 결합할 수 있습니다. |
LAST_COMPLETED_DEPENDENCY |
OBJECT |
다음 속성을 포함합니다.
|
STATISTICS |
OBJECT |
다음 속성을 포함합니다.
|
REFRESH_ACTION |
TEXT |
다음 중 하나:
|
REFRESH_TRIGGER |
TEXT |
다음 중 하나:
|
사용법 노트¶
Information Schema 테이블 함수를 호출할 때 세션에는 사용 중인 INFORMATION_SCHEMA 스키마가 있거나 또는 함수 이름이 정규화되어야 합니다. 자세한 내용은 Snowflake Information Schema 섹션을 참조하십시오.
예¶
실패했거나 취소된 새로 고침을 검색합니다.
SELECT name, state, state_code, state_message, query_id, data_timestamp, refresh_start_time, refresh_end_time FROM TABLE ( INFORMATION_SCHEMA.DYNAMIC_TABLE_REFRESH_HISTORY ( NAME_PREFIX => 'MYDB.MYSCHEMA.', ERROR_ONLY => TRUE ) ) ORDER BY name, data_timestamp;