본문 바로가기

TIL/개인공부

[TIL] array_sort, array_contains pysparkSQL함수

반응형

 

*주의 pysparkSQL에서 작동합니다. 다른 SQL언어에서 작동할지는 확인을 못했습니다

array_sort

만일 특정 array변수 타입이 들어있는 column을 정렬하고 싶을때, array_sort를 사용하면 됨 

temp라는 table이 있다면

SET
['B', 'A', 'C']
['B', 'C', 'A', 'D']

SET에 들어있는 배열의 순서를 보장하고싶을때

select *, array_sort(SET) as SORT_SET
from temp
SET SORT_SET
['B', 'A', 'C'] ['A', 'B', 'C']
['B', 'C', 'A', 'D'] ['A', 'B', 'C', 'D']

array_contains

where 구문에서 어떤 Array형식에 특정값이 포함되어있는지 유무를 보기위해선 array_contains 함수를 사용

 

예시(Example)

  • [‘A’, ‘B’, ‘C’] 형식이 들어있는 SET column에서 ‘A’라는 값이 있는지 확인하고싶을때
  • array_contains(SET, ‘A’) 를 쓰면 됨

temp라는 table이 있다면

SET
['A', 'B', 'C']
['B', 'C']
select *, case when array_contains(SET, 'A') then 1 else 0 end as check
from temp
SET check
['A', 'B', 'C'] 1
['B', 'C'] 0
반응형