Snowflake의 데이터 타입과 함수
Jake Roach
Field Data Engineer
복잡한 로직을 하나의 재사용 가능한 함수로 “포장”합니다
$$
$$
$$
... 자세히 살펴보겠습니다!

SELECT
first_name, last_name, school_name,
CONCAT(
first_name,
'.',
last_name,
'@',
school_name,
'.com'
)
FROM STUDENTS.personal_info;
SELECT first_name, last_name, school_name,-- 재사용 가능, 가독성 높음 build_email_address( first_name, last_name, school_name ) AS email_addressFROM STUDENTS.personal_info;
CREATE OR REPLACE FUNCTION <name> (-- 인수와 타입 지정 <arg1> <type1>, <arg2> <type2>, ... )RETURN <type> -- 반환 타입 선언AS $$ -- 여기에서 함수를 정의합니다 $$
$$
$$
CREATE OR REPLACE FUNCTIONRETURN 타입 선언$$ ... $$에 정의CREATE OR REPLACE FUNCTION build_email_address(first_name TEXT, last_name TEXT, school_name TEXT)RETURN TEXTAS $$ CONCAT(LOWER(first_name), '.', LOWER(last_name), '@', LOWER(school_name), '.com') $$;
SELECT
first_name, last_name, school_name,
build_email_address(first_name, last_name, school_name) AS email_address
FROM STUDENTS.personal_info;
first_name | last_name | school_name | email_address
------------ | ----------- | ------------- | ----------------------------
Ryan | Cohen | Harvard | [email protected]
Tatiana | Doyle | Stanford | [email protected]
Pankaj | Pandey | MIT | [email protected]
Jake | Roach | Purdue | [email protected]
Snowflake의 데이터 타입과 함수