예꾸
개발자국
예꾸
전체 방문자
오늘
어제
  • 분류 전체보기 (111)
    • CS (6)
      • 데이터베이스 (5)
      • 운영체제 (0)
      • Computer Architecture (1)
    • 끄적끄적 (4)
    • 이론 (29)
      • 알고리즘 (18)
      • 자료구조 (4)
      • WEB (2)
      • JS (2)
      • Git (2)
      • Python (1)
    • 면접준비 (3)
      • Vue (1)
      • Design Pattern (1)
      • Frontend (1)
    • 개발기술 (20)
      • Git PUSH 자동화 (3)
      • VUE (1)
      • Linux (2)
      • MERN Stack (2)
      • React기반 Gatsby로 블로그 개발하기 (6)
      • Typescript (0)
      • 감정일기장(React) (3)
      • CI CD (3)
    • 코드트리 (6)
      • 블로그 챌린지 (3)
      • 모의시험 (3)
    • 취업준비 (3)
      • 코딩테스트 후기 (3)
    • 프로그래머스 (8)
      • SQL (7)
      • 알고리즘 (1)
    • 백준 (31)
      • 그리디(탐욕법) (6)
      • 구현 (5)
      • 그래프탐색(dfs, bfs) (5)
      • 완전탐색 (5)
      • 문자열 (5)
      • 누적합 (2)
      • DP(다이나믹 프로그래밍) (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • JS
  • 프로그래머스
  • 코딩테스트
  • 프로그래머스 SQL
  • 백준 그래프탐색
  • 백준 완전탐색
  • gatsby
  • React
  • javascript
  • 자료구조
  • 백준 구현
  • 알고리즘
  • 백준 그리디
  • 운영체제
  • 코딩테스트실력진단
  • 코드트리 추천
  • 백준 문자열
  • 코드트리
  • 컴퓨터 시스템의 구조
  • 나만의공부노트

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
예꾸

개발자국

[프로그래머스 SQL] MYSQL - JOIN 정답
프로그래머스/SQL

[프로그래머스 SQL] MYSQL - JOIN 정답

2021. 11. 15. 18:46

없어진 기록 찾기

--보여줄 data 표시
SELECT A.ANIMAL_ID, A.NAME

-- ANIMAL_OUTS를 A로
FROM ANIMAL_OUTS A

--JOIN하는 ANIMAL_INTS를 B로
--A와 B의 ANIMAL_ID가 같은 것만 표시
LEFT JOIN ANIMAL_INS B ON A.ANIMAL_ID = B.ANIMAL_ID

--ANIMAL_INS가 NULL이 아닌 것만 보여줌
WHERE B.ANIMAL_ID IS NULL

--ANIMAL_ID순으로
ORDER BY A.ANIMAL_ID

있었는데요 없었습니다

-- 보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회
SELECT A.ANIMAL_ID, A.NAME
FROM ANIMAL_INS A

-- ID같은 것만 보이도록
JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID

-- 입양일이 더 빠른 아이들만
WHERE A.DATETIME > B.DATETIME

-- 보호 시작일이 빠른 순으로 조회
ORDER BY A.DATETIME

 

오랜 기간 보호한 동물(1)

-- 이름, 보호 시작일 조회
SELECT A.NAME, A.DATETIME
FROM ANIMAL_INS A
LEFT JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.ANIMAL_ID IS NULL

-- 입양 못간 동물 가장 오래된 순
ORDER BY A.DATETIME

-- 3마리까지만
LIMIT 0, 3

 

보호소에서 중성화한 동물

-- 아이디, 종, 이름 조회
SELECT A.ANIMAL_ID, A.ANIMAL_TYPE, A.NAME
FROM ANIMAL_INS A
LEFT JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID

-- 보호소 전, 중성화 X, 보호소 나갈때는 중성화
-- 들어올때 중성화 -> 나갈때 중성화 x인 경우는 없으니 서로 다른 값들만 나오게함
WHERE A.SEX_UPON_INTAKE <> B.SEX_UPON_OUTCOME

-- 아이디순
ORDER BY A.ANIMAL_ID
LIMIT 100

 

    '프로그래머스/SQL' 카테고리의 다른 글
    • [프로그래머스 SQL] MySQL - SELECT 정답2
    • [프로그래머스 SQL] MySQL - String, Date 정답
    • [프로그래머스 SQL] MySQL - IS NULL정답
    • [프로그래머스 SQL] MySQL - GROUP BY 정답
    예꾸
    예꾸
    비전공자 옒의 개발이야기💻

    티스토리툴바