없어진 기록 찾기
SELECT OO.ANIMAL_ID, OO.NAME
FROM ANIMAL_OUTS OO LEFT OUTER JOIN ANIMAL_INS II
ON OO.ANIMAL_ID = II.ANIMAL_ID
WHERE II.ANIMAL_ID IS NULL
join : 테이블 두개가 하나로 합치는거(주점에서의 그것과 동일)
- 조인은 이너조인과 아우터조인 두가지가 있는데
- 이너조인 : 교집합 >> 남은 안주랑 술만 모아서 새로운 테이블에 앉는거
- 아우터조인 : 합집합 >> 그냥 테이블 두개를 이어붙여서 두개였던 테이블이 하나의 테이블로 붙어버리는거
- Left-outer-join : 남자테이블이 여자테이블로 술잔만 챙겨서 옮기는거
- Right-outer-join : 여자테이블에서..... 너무 멀리 와버린거같다 DB 공부 열심히하자
UNION 과 다른점
- UNION은 그냥 단순히 테이블이 붙어버림, 같은 속성의 컬럼이 있다면 중복의 가능성
- JOIN에서는 ON 키워드로 테이블 병합의 기준점(기준 컬럼)이 존재해서
- 중복된 속성을 제거(그러니까 하나만 표기)하여 같은 속성을 한 번만 표기하는 방법.
오랜 기간 보호한 동물(1)
SELECT I.NAME, I.DATETIME
FROM ANIMAL_INS I LEFT OUTER JOIN ANIMAL_OUTS O
ON I.ANIMAL_ID = O.ANIMAL_ID
WHERE O.DATETIME IS NULL
ORDER BY I.DATETIME
LIMIT 3
헤비 유저가 소유한 장소
SELECT ID , NAME, HOST_ID
FROM PLACES
WHERE HOST_ID IN (
SELECT HOST_ID
FROM PLACES
GROUP BY HOST_ID
HAVING COUNT(ID) >= 2
)
ORDER BY ID
있었는데요, 없었습니다
코드를 입력하세요
오랜 기간 보호한 동물(2)
코드를 입력하세요
템플릿
#
- 링크:
- 풀이 :
sql
코드를 입력하세요