SQL/프로젝트

[Oracle] 공공데이터 서울 상가(상권)정보 분석하기 2

김초송 2022. 12. 2. 18:18

처음에는 PIVOT 함수 사용한 테이블로 뷰를 만들었는데 조인 후 연산이 안되길래

(왜 인지 아시는 분은 댓글로 알려주세요ㅠㅠ)

보이기만 똑같게 보이고 실제 테이블 구성이 다른 것 같았다. 

PIVOT 함수로 할 수 있음 뭐해 연산도 안되는데... 오라클 정신 안 차려?!

 

오라클 PIVOT 테이블 만드는 법: 

https://kimchocosong.tistory.com/50

 

[Oracle] 공공데이터 서울 상가(상권)정보 분석하기 1 - PIVOT

select 시군구명 , count(case when 상권업종대분류명 = '소매' then 1 end) 소매 , count(case when 상권업종대분류명 = '음식' then 1 end) 음식 , count(case when 상권업종대분류명 = '부동산' then 1 end) 부동산 , count(cas

kimchocosong.tistory.com

-- 2022 년 상권 정보
create view market_2022_total as 
select 시군구명
    , count(case when 상권업종대분류명 = '소매' then 1 end) 소매
    , count(case when 상권업종대분류명 = '음식' then 1 end) 음식
    , count(case when 상권업종대분류명 = '부동산' then 1 end) 부동산
    , count(case when 상권업종대분류명 = '생활서비스' then 1 end) 생활서비스
    , count(case when 상권업종대분류명 = '관광/여가/오락' then 1 end) "관광/여가/오락"
    , count(case when 상권업종대분류명 = '학문/교육' then 1 end) "학문/교육"
    , count(case when 상권업종대분류명 = '숙박' then 1 end) 숙박
    , count(case when 상권업종대분류명 = '스포츠' then 1 end) 스포츠
    , count(*) 전체
from market_2022
group by 시군구명
order by 시군구명;

-- 2019 년 상권 정보 (부산 일부 포함)
create view market_2019_total as 
select 시군구명
    , count(decode(상권업종대분류명, '소매', 1)) 소매
    , count(decode(상권업종대분류명, '음식', 1)) 음식
    , count(decode(상권업종대분류명, '부동산', 1)) 부동산
    , count(decode(상권업종대분류명, '생활서비스', 1)) 생활서비스
    , count(decode(상권업종대분류명, '관광/여가/오락', 1)) "관광/여가/오락"
    , count(decode(상권업종대분류명, '학문/교육', 1)) "학문/교육"
    , count(decode(상권업종대분류명, '숙박', 1)) 숙박
    , count(decode(상권업종대분류명, '스포츠', 1)) 스포츠
    , count(*) 전체
from market_2019
group by 시군구명
order by 시군구명
;

-- 2019년 대비 2022년 상가 증감 표시
select m22.시군구명
        , m22.소매 - m19.소매 소매
        , m22.음식 - m19.음식 음식
        , m22.부동산 - m19.부동산 부동산
        , m22.생활서비스 - m19.생활서비스 생활서비스
        , m22."관광/여가/오락" - m19."관광/여가/오락" "관광/여가/오락"
        , m22."학문/교육" - m19."학문/교육" "학문/교육"
        , m22.숙박 - m19.숙박 숙박
        , m22.스포츠 - m19.스포츠 스포츠
        , m22.전체 - m19.전체 전체
from market_2019_total m19 join market_2022_total m22
    on m19.시군구명 = m22.시군구명

대부분 상가가 없어졌고 증가했더라도 증가폭이 크지 않다ㅜㅜ

업종별 증감도 보고싶은데 모르겠다 rollup 같은데 몇번 했지만 실패함... 데이터리안 실전반 다시 들어야겠다^^ㅠ 두 달도 안됐는데 다 까먹었네

 

결론

  • 강남구보다 중구가 더 많이 감소한 이유는 코로나로 외국인 관광객이 감소하여 명동 쪽 상가가 피해가 컸기 때문으로 보인다
  • 대부분의 구가 상권이 축소하였고 증가한 구도 증가폭이 크지 않다
  • 마포구와 송파구에 상권이 확대됐다. 거주인구가 증가했는지 새로운 핫플이 생긴건지 원인 분석을 해볼 필요가 있음!