Snowflake의 데이터 타입과 함수
Jake Roach
Field Data Engineer
LENGTH(<field>)
SELECT
song_name,
LENGTH(song_name) AS characters
FROM MUSIC.songs;
song_name | characters
---------------- | -----------
Levon | 5
Tiny Dancer | 11
Rocket Man | 10
LENGTH는 문자열의 문자 수를 반환합니다
$$
VARCHAR, TEXT, STRING 등에 사용LEN은 LENGTH와 동의어텍스트의 앞뒤 문자들을 제거합니다
$$
LTRIM, RTRIM도 있음SELECT
<field>,
-- 컬럼 시작/끝 문자 제거
TRIM(<1>, <2>)
FROM ...;
<1>: 트리밍할 컬럼 또는 값
<2>: 선택 사항, 시작/끝에서 제거할 패턴. 없으면 ' '(공백)
SELECT
song_long_name,
TRIM(song_long_name, '(Remastered)') AS trimmed_song_name
FROM MUSIC.songs;
TRIM(song_long_name, '(Remastered)')
song_long_name | trimmed_song_name
---------------------------- | --------------------------
(Remastered) Piano Man | Piano Man
Ticking (Remastered) | Ticking
Come Sail Away | Come Sail Away
구분자로 텍스트를 값의 배열로 분할합니다
$$
ARRAY$$
$$
<1>: SPLIT할 컬럼
<2>: 분할에 사용할 구분자
SELECT
<field>,
-- 필드를 SPLIT하고 대괄호 표기로
-- 첫 조각을 조회
SPLIT(<1>, <2>),
SPLIT(<1>, <2>)[X]
FROM ...;
Math,Science,Art,Reading
...
['Math', 'Science', 'Art', 'Reading']
SELECT collaborators,SPLIT(collaborators, ',') AS all_collaborators,SPLIT(collaborators, ',')[0] AS primary_artist -- 첫 번째 공동 작업자 반환FROM MUSIC.songs;
collaborators | all_collaborators | primary_artist
-------------------------- | ---------------------------------- | ---------------
Queen, David Bowie | ['Queen', ' David Bowie'] | Queen
Elton John, Kiki Dee | ['Elton John', ' Kiki Dee'] | Elton John
Carly Simon, James Taylor | ['Carly Simon', ' James Taylor'] | Carly Simon
SELECT
<field>,
<another-field>,
<third-field>,
CONCAT(
<field>,
<another-field>,
' ',
<third-field>
)
FROM ...;
두 개 이상의 텍스트 값을 함께 연결합니다
$$
,로 구분해 임의 개수 가능SELECT
song_name, artist_name,
-- 세 개의 텍스트 값을 연결
CONCAT(song_name, ' is written by ', artist_name) AS description
FROM MUSIC.songs;
song_name | artist_name | description
----------------- | -------------- | --------------------------------------------
Night Moves | Bob Seger | Night Moves is written by Bob Seger
Cracklin' Rosie | Neal Diamond | Cracklin' Rosie is written by Neal Diamond
Snowflake의 데이터 타입과 함수