52. 집계 결과 출력하기(ROLLUP) 요약 1. 집계 결과는 ROLLUP으로 출력한다. 2. 가장 아래에 총합이 나타난다. ROLLUP은 집계 결과가 나오는 함수이다. 아래와 같이 두가지 이상을 엮에서 쿼리를 작성할 수 있다. 먼저 있는 deptno가 먼저 나오고 (부서별 정보) 그다음에 job이 그 다음에 나온다. 부서별 포함된 job만 출력되므로 유의하자 코딩/SQL 2022.06.04
44. 순위의 비율 출력(CUME_DIST) 누적 비율을 뽑아보자 ROUND로 소수점 비율을 보기쉽게 해주자 공동 순위가 있을때 누적비율은 순위가 높게 된다. (공동 2위가 2명이면 3등 비율로 출력됨) 마찬가지로 PARTITION BY 함수 적용이 가능하다. 점점 함수의 개수가 많아진다... 모두 기억하는 것은 어렵지만 익숙해지는 것은 계속되는 연습으로 가능하다고 생각한다. 꾸준히 연습해보면서 해보자 코딩/SQL 2022.06.03
43. 등급 출력(NTILE) 등급을 출력해보자 NTILE(나눌 등급 개수) OVER (원하는 변수) 로 작성해주면된다. NULLS LAST 함수는 결측치를 가장 마지막에 출력하겠다는 의미이다. NULLS LAST가 없다면 결측치가 가장 먼저나오게 된다. 지금은 결측치가 많아 예시가 깔끔하지않은데 데이터가많고 결측치가 적으면 효과가 커지는 함수이다. 코딩/SQL 2022.06.03
42. 순위출력2(DENSE_RANK) 요약 RANK 함수는 공동순위를 포함해서 산출되었다(1위가 두명이면 그 다음은 3위) DENSE_RANK는 공동순위를 고려하지않고 산출한다.(1위가 중복이라도 그 다음은 2위) 4번째행에 있는 JONES를 보면 순위 차이가 있다. RANK 함수와 마찬가지로 DENSE_RANK도 PARTITION BY 함수 적용이 가능하다. 이번엔 특정 데이터의 순위를 보는 것을 배워보자 원래 데이터의 순위를 출력하는 것이 RANK() OVER ~~ 이었다면 특정데이터의 순위는 RANK(특정 데이터) WITHIN GROUP ~~ 으로 작성해주면된다, 코딩/SQL 2022.06.03
41. 순위 출력(RANK) 요약 1. 순위는 RANK() OVER를 사용 2. 공동 순위를 고려해서 나옴(1등이 두명이면 그 다음은 3등) 3. 괄호 안을 조정해서 원하는 RANK를 출력할 수 있다.(직업별.. 등등) 순위를 출력해보자 RANK() OVER(ORDER BY 변수 DESC)로 순서를 출력할 수 있다. 괄호안은 용도에 맞게 변경해서 사용할 수 있다. 아래와 같이 PARTITION BY job을 추가하여 직업별로 나누어서 순서를 뽑을 수도 있다. 코딩/SQL 2022.06.02
40. 건수 출력하기(COUNT) 요약 1. 개수, 건수 출력은 COUNT 2. 결측치를 제외하고 개수를 세준다 데이터의 개수를 세주는 COUNT를 배워보자 아래와 같이 emp 데이터 셋은 14개의 데이터가 있다. 따라서 개수를 출력했을때 14개가 나온다. 하지만 COUNT는 결측치를 제외하고 개수를 세준다. 결측치가 포함된 comm 변수는 4개만 출력된다. 따라서 전체 데이터의 개수를 정확하게 파악하고 싶으면 COUNT(*) 결측치를 제외한 개수를 알고싶으면 COUNT(변수)를 사용하자 코딩/SQL 2022.06.02
39. 토탈값 출력하기(SUM) 요약 1. 총합은 SUM을 사용 39과 내용인데 38과에서 미리 좀 해서 간단하게 복습하고 가자 합계를 구하고 싶으면 SUM을 사용하면 된다. HAVING과 WHERE을 복습해보자 코딩/SQL 2022.06.02
35. Average Population 평균을 구하자!!! 이건 최근에 AVG인거 배웠다!!! MEAN이 아니니깐 헷갈리지말자!! 그리고 이번문제는 내림이 있다. 내림은 FLOOR로 쓰면 된다.(MYSQL) ORACLE에서는 TRUNC 함수로 버릴 수 있다. 코딩/SQL 코딩테스트 2022.06.01
34. Weather Observation Station 19 유클리드 거리는 우리가 일반적으로 아는 거리이다. ((x축간 차이)^2+(y축간 차이)^2)의 제곱근 값을 구해주면 된다. 제곱근 구하는 것이 SQRT인것을 찾아서 풀어보자 반올림을 안해서 틀렸나... ^가 안되는 것 같아 풀어서 썼다. 나중에 보니 POWER라는 함수로 거듭제곱을 표현할 수 있다고 한다. 그건 담에 써보기로하고 이번에도 반올림이 없어서 그것만 쓰고 진행해보자 어찌어찌 정답은 구한다... 간단하게 POWER를 써서도 다시풀어보았다. 코딩/SQL 코딩테스트 2022.06.01
33. Weather Observation Station 17 이건 방금 문제의 최솟값을 찾으면된다. 서브쿼리로 LAT_N의 최소값을 찾고 그 도시의 LONG_W를 찾아주자 아직 서브쿼리를 작성하는 것이 익숙하지 않다. 책과 문제를 보면서 자연스럽게 사용해보자 코딩/SQL 코딩테스트 2022.06.01