본문 바로가기

빅데이터과정/SQL

#5_140607_일일과제(crime)

728x90

#마무리 과제






Select * from crime_time; 를 이용



1.     아침 9시부터 12시 사이에 가장 많이 발생하는 범죄는?
SELECT *
FROM (SELECT crime_type, RANK() OVER (ORDER BY f9t12 desc) 범죄순위
FROM crime_time
)
WHERE 범죄순위 = 1;

2.     하루중에서 살인이 가장 많이 발생하는 시간대는?

SELECT *
FROM (SELECT crime_type, ttime, cnt, RANK() over(ORDER BY cnt desc) 순위
FROM crime_time
unpivot(cnt FOR ttime IN (F0T3,F3T6,F6T9,F9T12,F12T15,F15T18,F18T21,F21T24))
WHERE crime_type='살인'
  )
WHERE 순위=1;

3.     강도가 많이 발생하는 시간대는?

SELECT *
FROM (SELECT crime_type, ttime, cnt, RANK() over(ORDER BY cnt desc) 순위
FROM crime_time
unpivot(cnt FOR ttime IN (F0T3,F3T6,F6T9,F9T12,F12T15,F15T18,F18T21,F21T24))
WHERE crime_type='강도'
)
WHERE 순위=1;

4.     위의 SQL을 이용해서 문제를 해결하는데 순위를 출력하고, 순위별로 해당하는 사원들의 이름을 가로로 출력하시오  문제206 + decode 활용

             1         2         3 
살인      우발적      기타      가정불화

SELECT *
FROM (SELECT crime_type, cause, cnt, RANK() OVER(ORDER BY cnt desc) 순위
FROM crime_cause
unpivot (cnt FOR cause IN (COST_LIVING,ENTERTAINMENT, GAMBLING,VANITY, GENITALS, DISMISSED, RETRIBUTION, FAMILY_FEUD, CURIOSITY, TEMPTATION, ACCIDENTAL, COMPLAINTS, CARELESSNESS, ETC))
WHERE crime_type = '살인')


WHERE 순위 = 1;


'빅데이터과정 > SQL ' 카테고리의 다른 글

#6_140621_테이블 및 컬럼 이름 지정규칙  (0) 2014.07.10
#5_140607_분석함수  (0) 2014.07.10
#4_140531_null에 대해서  (0) 2014.07.10
#4_140531_140621_DDL  (0) 2014.07.10
#4_140531_sysdate  (0) 2014.07.10