목록분류 전체보기 (91)
오랑우탄의 반란

테이블을 자기 자신과 조인하는 셀프 조인에 대해 알아보겠습니다. SELF JOIN은 한 테이블 내에서 칼럼 간, 개별 값 간 대조가 필요할 때 사용할 수 있습니다. 문법은 JOIN/쉼표로 연결하고 (필수) 별칭을 붙여줍니다.SELECT column_name(s)FROM table1 T1, table1 T2WHERE condition; 아래 두 가지 예시로 SELF JOIN의 활용을 살펴보겠습니다. LeetCode | 197. Rising Temperaturehttps://leetcode.com/problems/rising-temperature/ 하나의 테이블 내의 날짜 값과 온도 값에 대한 비교가 필요하기 때문에 self join 을 사용해서 이어줍니다. from weather w1 join we..

오늘도 오랑이는 문제를 풉니다. 한 번에 풀 수 있을 것처럼 생겨서 한 번에 풀리지 않아서 머리 싸맨 문제 중 하나입니다. 역시 오랑이는 아직 갈 길이 멉니다. 문제 설명 다음은 어느 자동차 대여 회사에서 대여 중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블과 자동차 대여 기록 정보를 담은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블과 자동차 종류 별 대여 기간 종류 별 할인 정책 정보를 담은 CAR_RENTAL_COMPANY_DISCOUNT_PLAN 테이블 입니다. 문제1. 자동차 종류가 '트럭'인 자동차의 대여 기록에 대해서 2. 대여 기록 별로 대여 금액(컬럼명: FEE)을 구하여 대여 기록 ID와 대여 금액 리스트를 출력3. 대여 금액을 기준으..

오늘도 오랑이는 문제를 풉니다. 동명 동물 수 찾기 풀이 과정예전에 풀었던 문제를 다시 살펴봤습니다. 기존 쿼리와 새로 작성한 쿼리를 비교해보면 having 으로 훨씬 간편하게 푼 걸 볼 수 있습니다. 다만 두번째 풀이에서 처음에 COUNT(*) 로 해서 오답이 나왔는데, 문제에서 NULL 값은 제외하라는 조건을 유의해서 COUNT(NAME) 으로 변경해야 정답이 나옵니다. COUNT(칼럼) 은 NULL 값 제외하고 집계됨 COUNT(*) 은 NULL 값의 행도 모두 집계됨 최종 코드# AFTERSELECT NAME, COUNT(NAME) AS COUNTFROM ANIMAL_INSGROUP BY 1HAVING COUNT(NAME) >=2ORDER BY 1# BEFORESELECT NAME, COUNTF..