additional_result_filter / additional_table_filters 세션 설정

additional_result_filter / additional_table_filters 세션 설정

이 설정들은 SELECT 쿼리 결과나 특정 테이블을 읽은 뒤에 추가 필터를 적용하는 방법을 제공해요. 쿼리에 필터 조건을 덧붙여 결과물을 걸러내고 싶을 때 사용해요. ClickHouse 소스 코드에서 자동으로 생성된 세션 설정 문서예요.

출처: 문서

본문

이 설정들은 system.settings에서 사용할 수 있으며 소스 코드에서 자동으로 생성돼요.

additional_result_filter

SELECT 쿼리 결과에 적용할 추가 필터 표현식이에요. 이 설정은 어떤 서브쿼리에도 적용되지 않아요.

예시

INSERT INTO table_1 VALUES (1, 'a'), (2, 'bb'), (3, 'ccc'), (4, 'dddd');
SElECT * FROM table_1;
┌─x─┬─y────┐
│ 1 │ a    │
│ 2 │ bb   │
│ 3 │ ccc  │
│ 4 │ dddd │
└───┴──────┘
SELECT *
FROM table_1
SETTINGS additional_result_filter = 'x != 2'
┌─x─┬─y────┐
│ 1 │ a    │
│ 3 │ ccc  │
│ 4 │ dddd │
└───┴──────┘

additional_table_filters

지정된 테이블에서 읽은 뒤에 적용되는 추가 필터 표현식이에요.

예시

INSERT INTO table_1 VALUES (1, 'a'), (2, 'bb'), (3, 'ccc'), (4, 'dddd');
SELECT * FROM table_1;
┌─x─┬─y────┐
│ 1 │ a    │
│ 2 │ bb   │
│ 3 │ ccc  │
│ 4 │ dddd │
└───┴──────┘
SELECT *
FROM table_1
SETTINGS additional_table_filters = {'table_1': 'x != 2'}
┌─x─┬─y────┐
│ 1 │ a    │
│ 3 │ ccc  │
│ 4 │ dddd │
└───┴──────┘

SQL SECURITY DEFINER 또는 NONE으로 뷰를 통해 읽히는 테이블을 키로 하는 필터는 뷰 내부에서 적용되지 않아요.

더 알아보기 (Learn more)