전체 글 171

34. Weather Observation Station 19

유클리드 거리는 우리가 일반적으로 아는 거리이다. ((x축간 차이)^2+(y축간 차이)^2)의 제곱근 값을 구해주면 된다. 제곱근 구하는 것이 SQRT인것을 찾아서 풀어보자 반올림을 안해서 틀렸나... ^가 안되는 것 같아 풀어서 썼다. 나중에 보니 POWER라는 함수로 거듭제곱을 표현할 수 있다고 한다. 그건 담에 써보기로하고 이번에도 반올림이 없어서 그것만 쓰고 진행해보자 어찌어찌 정답은 구한다... 간단하게 POWER를 써서도 다시풀어보았다.

32. Weather Observation Station 15

이 문제는 블로그 글을 보면서 풀었다.. 제한된 범위에서 가장 큰 LAT_N를 가진 도시의 LONG_W를 찾는 문제이다. 아직 책에서 배우지 않았지만 서브쿼리를 작성해서 풀면 될거같았다. 처음엔 문제를 잘못보고 가장큰 LONG_W을 찾구있었다. 문제를 제대로 이해했으니 서브쿼리를 시도해보자 이건 LAT_N에서 먼저 MAX값을 찾아야하는데 그런 쿼리가 아니었다. 이렇게 틀리기도하고 이젠 너무 복잡하게 쓸 필요가 없다는 것을 느끼고 아래와같이 MAX값을 먼저뽑고 그리고 LONG_W를 찾는 코드를 작성했따. 그런데 반올림을 빼놓았으니 이걸 추가해서 만들어주자 이제 서브쿼리 문제도 어찌어찌 풀게 되었다.

38. 평균값 출력하기(AVG, HAVING)

요약 1. 평균은 AVG 2. HAVING은 WHERE와 같은 역할이 가능하다 3. 함수의 순서를 잘 기억하자 데이터의 평균값을 출력해보자 AVG를 쓰면된다. 결측치는 제외하고 평균을 출력해준다. 여기서 꼭 필요한 것을 배워보자!!!! HAVING 함수이다. 아래 예시와 같이 만들면 그룹함수를 적용할 수 없다 왜냐하면 WHERE 함수가 GROUP BY 함수보다 먼저 실행되기 때문이다. 이때 HAVING 을 사용하면 합계가 3000이상인 곳을 선책할 수 있다. HAVING은 GROUP BY보다 늦게 실행되고, 그룹별로 출력이 가능하다. WHERE를 추가해서 더 구체화된 코드를 작성할 수 있다. 순서를 유의해서 작성해보자

코딩/SQL 2022.06.01

36. 최대값 출력하기(MAX, GROUP BY)

요약 1. 최대값은 MAX 2. GROUP BY는 그룹별로 묶어준다. 3. 출력되는 행의 갯수가 같게 해주자 최대값을 출력해보자 MAX(변수)를 쓰면 간단하게 볼 수 있다. 코딩테스트에서도 이미 해보았던 것이라 빠르게 이해했다. 여기서 추가 함수를 배워보자 GROUP BY로 동일한 행을 묶어주는 함수이다. 아래는 직업별로 최대 봉급을 확인할 수 있다. 별수별로 출력되는 행이 같아야 정확하게 출력된다.

코딩/SQL 2022.06.01