일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 웹개발
- JavaScript
- BufferedReader
- MySQL
- StringBuilder
- 프로그래밍
- DML
- Git
- 스프링
- where
- 형변환
- 클래스
- 정보처리기사필기요약
- scanner
- 메서드
- 개발자
- 프론트엔드
- Linux
- SQL
- String클래스
- Java
- 데이터 조회
- 입출력
- mybatis
- select
- 리눅스
- html
- 프로그래머스 sql 고득점 kit
- sql문
- 알고리즘
- 백준
- 프로그래머스 SQL
- order by
- 자바스크립트
- 백엔드
- github
- 정보처리기사
- select문
- 자바
- 예외처리
- Today
- Total
ToBe끝판왕
[ 프로그래머스 / SQL ] JOIN - 보호소에서 중성화한 동물 본문
보호소에서 중성화한 동물
Programmers의 SQL 고득점 Kit
JOIN 문제
▶ 해당 문제 링크
https://programmers.co.kr/learn/courses/30/lessons/59045
정답 및 풀이
▶ JOIN 문
• 조인( JOIN ) 은 2개의 테이블을 서로 연결하여 데이터를 검색할 때 사용하는 방법이다.
• INNER JOIN( 내부 조인 )은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다.
• OUTER JOIN( 외부 조인 )은 두 테이블을 조인할 때, 1개의 테이블에만 데이터가 있어도 결과가 나온다.
• CROSS JOIN( 상호 조인 )은 한쪽 테이블의 모든 행과 다른 테이블의 모든 행을 조인하는 기능이다.
• SELF JOIN( 자체 조인 )은 자신이 자신과 조인한다는 의미로, 1개의 테이블을 사용한다.
• INNER JOIIN( 내부 조인 )
- 두 테이블 연결할 때, 가장 많이 사용한다.
- 그냥 조인이라고 부르는것은 INNER JOIN을 의미한다.
SELECT 조회할 컬럼
FROM 테이블명1
INNER JOIN 테이블명2
ON 테이블1.컬럼 = 테이블2.컬럼;
[ WHERE 조건 ]
• OUTER JOIN( 외부 조인 )
- INNER JOIN은 두 테이블에 모두 데이터가 있어야 결과가 나오지만, 외부조인은 한쪽에만 데이터가 있어도 나온다.
- 주로 LEFT OUTER JOIN이 많이 쓰인다.
SELECT 조회할 컬럼명
FROM 테이블명1( left 테이블 )
< LEFT / RIGHT / FULL > OUTER JOIN 테이블명2( right 테이블 )
ON 조건문;
[ WHERE 조건 ]
※ OUTER JOIN 종류
• LEFT OUTER JOIN : 왼쪽 테이블의 모든 값이 출력되는 조인
• RIGHT OUTER JOIN : 오른쪽 테이블의 모든 값이 출력되는 조인
• FULL OUTER JOIN : 왼쪽 or 오른쪽 테이블의 모든 값이 출력되는 조인
▶ 정답
• 보호소에 들어올 당시에는 중성화가 되지 않았지만, 보호소에서 나갈 당시에는 중성화된 동물의 아이디와
생물 종, 이름을 조회하므로 SELECT로 ANIMAL_ID , ANIMAL_TYPE, NAME을 조회하고
중성화되지 않은 동물은 Like함수와 INACT를 이용하여 정의하고 중성화를 이미 한경우도 같이 정의해준다.
• 아이디순으로 조회해야 하기 때문에 ORDER BY를 사용해 준다.
SELECT INS.ANIMAL_ID, INS.ANIMAL_TYPE, INS.NAME
FROM ANIMAL_INS AS INS join ANIMAL_OUTS AS OUTS
on INS.ANIMAL_ID = OUTS.ANIMAL_ID
WHERE INS.SEX_UPON_INTAKE LIKE 'INTACT%' AND OUTS.SEX_UPON_OUTCOME NOT LIKE 'INTACT%'
ORDER BY INS.ANIMAL_ID;
'■ 프로그래밍 SKILLS > SQL' 카테고리의 다른 글
[ SQL ] DECIMAL , FLOAT , DOUBLE 데이터 타입 (1) | 2024.12.12 |
---|---|
[ 프로그래머스 / SQL ] JOIN - 오랜 기간 보호한 동물(1) (0) | 2022.06.21 |
[ 프로그래머스 / SQL ] JOIN - 있었는데요 없었습니다 (0) | 2022.06.12 |
[ 프로그래머스 / SQL ] JOIN - 없어진 기록 찾기 (0) | 2022.06.12 |
[ 프로그래머스 / SQL ] GROUP BY - 입양 시각 구하기(2) (0) | 2022.06.11 |