본문 바로가기

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
    반응형