TO_QUERY
TO_QUERY (동적 쿼리 구성)
SQL 텍스트와, SQL 텍스트가 매개변수화된 경우 그 SQL 텍스트에 전달되는 선택적인 인자 집합을 기반으로 결과 집합을 반환해요. 이 함수는 SQL 텍스트를 FROM 절의 하위 쿼리 정의로 컴파일해요. 애플리케이션이나 저장 프로시저를 작성할 때 이 함수를 호출해 SQL 문을 구성할 수 있어요.
참고: 이 함수는 쿼리 문에 사용자 입력을 포함할 수 있으며, 이는 SQL 주입 같은 잠재적 보안 위험이 있어요. 함수에 대한 입력이 외부 소스에서 오면 검증했는지 확인해요. 자세한 내용은 SQL 주입을 참고해요.
본문
구문
TO_QUERY( SQL => '<string>' [ , <arg> => '<value>' [, <arg> => '<value>' ...] ] )
인자
필수:
SQL => '<string>'
하위 쿼리의 문자열 표현이에요.
선택:
<arg> => '<value>'
SQL 문자열에 전달되는 바인드 변수예요.
반환 값
지정한 SQL 텍스트를 실행해 만든 결과 집합 또는 NULL을 반환해요. 인자 중 하나라도 NULL이면 함수는 오류를 보고하지 않고 NULL을 반환해요.
사용 참고 사항
- 모든 인자는 다음 중 하나여야 해요:
- 상수 문자열.
- 문자열로 해석되는 SQL 변수 또는 Snowflake Scripting 변수.
- 인자에 전달된 문자열을 다른 데이터 타입으로 변환해야 하면 SQL 문자열에서 변환 함수를 사용해 문자열을 다른 데이터 타입으로 변환할 수 있어요.
- 결과 집합을 정의하는 컬럼 집합은 컴파일된 SQL 문의 SELECT 목록에서 파생돼요.
- 이 함수는 SQL 문의 FROM 절에서만 유효해요.
예시
테이블을 만들고 그 안에 데이터를 삽입해요:
CREATE OR REPLACE TABLE to_query_example (
deptno NUMBER(2),
dname VARCHAR(14),
loc VARCHAR(13))
AS SELECT
column1,
column2,
column3
FROM
VALUES
(10, 'ACCOUNTING', 'NEW YORK'),
(20, 'RESEARCH', 'DALLAS' ),
(30, 'SALES', 'CHICAGO' ),
(40, 'OPERATIONS', 'BOSTON' );