제품 및 기술

Snowflake를 사용한 SQL 스크립팅에 대해 알아야 할 사항

Snowflake를 사용한 SQL 스크립팅에 대해 알아야 할 사항

이제 Snowflake Scripting을 일반적으로 사용할 수 있으므로 SQL에서 Snowflake를 사용하여 스크립트와 저장 프로시저를 생성할 수 있습니다. 이 프로시저 언어는 SQL 언어를 조건문 및 루프문과 같은 구조 및 제어문으로 확장하며, Snowflake 사용자(대부분 SQL을 알고 좋아하는 사용자)가 저장 프로시저를 생성하고 기존 SQL 기반 스크립트를 쉽게 번역할 수 있게 합니다.

미리 보기 중에 우리는 이 기능의 놀라운 채택과 사용을 목격했습니다. Snowflake Scripting은 사용 방법이 쉽습니다. 아래 팁에서는 몇 가지 중요한 개념을 살펴보겠습니다. 그러면 바로 실행할 수 있습니다. 

블록 이해하기

이 기능을 사용하면 Snowflake Scripting 블록 내에 프로시저 코드를 작성할 수 있습니다. 저장 프로시저의 정의에 블록을 사용하거나, 저장 프로시저에서 블록을 사용하지 않으려면 별도의 독립 실행형 SQL 문으로 익명 블록을 생성할 수 있습니다. 

테이블 반환하기

새로운 주요 기능 중 하나는 Snowflake Scripting으로 테이블을 반환하는 기능입니다. 이렇게 하면 Snowflake 사용자는 Snowflake Scripting을 사용하여 ETL 및 데이터 처리 작업을 개발할 수 있을 뿐만 아니라 보고 절차의 개발 또는 마이그레이션을 간소화할 수 있습니다. Snowflake Scripting은 Snowflake의 SQL과 긴밀하게 통합되어 있으며 데이터 공유 또는 마켓플레이스 애플리케이션을 구축할 때도 사용 및 공유할 수 있습니다.

작동 제어 흐름 문

Snowflake Scripting은 IF 및 CASE 문을 포함한 분기 구성을 지원합니다. 

  • IF를 사용하면 조건이 충족되는 경우 문 집합을 실행할 수 있습니다. 
  • CASE는 IF와 유사하게 작동하지만 여러 조건을 지정할 때 더 간단합니다.  

루프는 다음 4가지 유형이 있습니다. FOR, WHILE, REPEAT 및 LOOP 

  • FOR 루프는 지정된 횟수 동안 또는 결과 집합의 각 행에 대해 일련의 단계를 반복합니다. 이것은 카운터 기반 또는 커서 기반일 수 있습니다. 
  • WHILE 루프는 조건이 참일 때만 작동합니다. WHILE 조건은 루프 본문 바로 전에 테스트되며 조건이 거짓이면 루프가 실행되지 않습니다(첫 번째 반복에서 발생하더라도 한 번). 
  • REPEAT 루프는 조건이 참일 때까지 계속됩니다. 
  • LOOP 루프는 명령이 제공될 때까지 계속 실행됩니다. 

커서를 사용하여 한 번에 한 행씩 쿼리 결과를 반복할 수 있습니다. 쿼리 결과에서 데이터를 검색하려면 커서를 사용하십시오. 루프에서 커서를 사용하여 결과의 행에 반복할 수 있습니다.

처리 예외

Snowflake Scripting 블록 내에서 오류가 발생할 경우 예외를 발생시킬 수 있으며, 이 예외로 인해 다음 줄의 코드가 실행되지 않습니다. 또한 Snowflake Scripting 코드에서 발생하는 예외를 처리할 수 있습니다. 

예외가 발생하면 Snowflake 스크립팅은 핸들러를 찾으려고 시도합니다. 예외 핸들러는 다른 예외를 처리하는 동안 예외가 발생하는 경우 자체 예외 핸들러를 포함할 수 있습니다.

Snowflake Scripting에 대해 자세히 알아보려면Snowflake 설명서를 참조하고, 시작하려면 Medium에서 일부 샘플 SQL 스크립트를 확인하십시오.

보너스: Snowflake 데이터 분야의 슈퍼히어로인 Rajiv Gupta 역시 Medium에 분기 구성, 루프, 커서 결과, 및 예외 처리를 포함하는 시리즈를 가지고 있습니다.  

기사 공유하기

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week

30일 무료 평가판시작하기

Snowflake를 30일 동안 무료로 사용해 보세요. 다른 솔루션에 내재된 복잡성, 비용 부담, 제약 조건 등을 해소하는 데 도움이 되는 AI 데이터 클라우드를 경험하실 수 있습니다.