준비된 문

SQL에서 준비된 문은 유사한 쿼리 또는 업데이트를 템플릿화하는 데 사용됩니다. Adobe Experience Platform Query Service 는 매개 변수가 있는 쿼리를 사용하여 준비된 문을 지원합니다. 이렇게 하면 쿼리를 반복적으로 다시 구문 분석할 필요가 없으므로 성능을 최적화할 수 있습니다.

준비된 문 사용

준비된 명령문을 사용할 때 지원되는 구문은 다음과 같습니다.

준비된 문 준비 prepare

이 SQL 쿼리는 이름이 로 지정된 작성된 SELECT 쿼리를 저장합니다. PLAN_NAME. 다음과 같은 변수를 사용할 수 있습니다 $1 실제 값 대신 이 준비된 문은 현재 세션 중에 저장됩니다. 플랜 이름은 다음과 같습니다. 아님 대/소문자를 구분합니다.

SQL 형식

PREPARE {PLAN_NAME} AS {SELECT_QUERY}

샘플 SQL

PREPARE test AS SELECT * FROM table WHERE country = $1 AND city = $2;

준비된 문 실행 execute

이 SQL 쿼리는 이전에 만든 준비된 문을 사용합니다.

SQL 형식

EXECUTE {PLAN_NAME}('{PARAMETERS}')

샘플 SQL

EXECUTE test('canada', 'vancouver');

준비된 문의 할당 해제 deallocate

이 SQL 쿼리는 명명된 준비 문을 삭제하는 데 사용됩니다.

SQL 형식

DEALLOCATE {PLAN_NAME}

샘플 SQL

DEALLOCATE test;

준비된 문을 사용한 예제 흐름

처음에는 아래 쿼리와 같은 SQL 쿼리를 가질 수 있습니다.

SELECT * FROM table WHERE id >= 10000 AND id <= 10005;

위의 SQL 쿼리는 다음 응답을 반환합니다.

ID
이름
생일
이메일
city
국가
10000
알렉산더
데이비스
1993-09-15
example@example.com
밴쿠버
캐나다
10001
앙투안
두부아
1967-03-14
example2@example.com
파리
프랑스
10002
교코
사쿠라
1999-11-26
example3@example.com
도쿄
일본
10003
리누스
페테르손
1982-06-03
example4@example.com
스톡홀름
스웨덴
10004
아시르
와이타카
1976-12-17
example5@example.com
나이로비
케냐
10005
페르난도
rios
2002-07-30
example6@example.com
산티아고
칠레

이 SQL 쿼리는 다음 준비된 문을 사용하여 매개 변수화할 수 있습니다.

PREPARE getIdRange AS SELECT * FROM table WHERE id >= $1 AND id <= $2;

이제 다음 호출을 사용하여 준비된 문을 실행할 수 있습니다.

EXECUTE getIdRange(10000, 10005);

이 호출되면 이전과 동일한 결과가 표시됩니다.

ID
이름
생일
이메일
city
국가
10000
알렉산더
데이비스
1993-09-15
example@example.com
밴쿠버
캐나다
10001
앙투안
두부아
1967-03-14
example2@example.com
파리
프랑스
10002
교코
사쿠라
1999-11-26
example3@example.com
도쿄
일본
10003
리누스
페테르손
1982-06-03
example4@example.com
스톡홀름
스웨덴
10004
아시르
와이타카
1976-12-17
example5@example.com
나이로비
케냐
10005
페르난도
rios
2002-07-30
example6@example.com
산티아고
칠레

준비된 명령문 사용을 마친 후 다음 호출을 사용하여 할당을 취소할 수 있습니다.

DEALLOCATE getIdRange;
recommendation-more-help
ccf2b369-4031-483f-af63-a93b5ae5e3fb