Lev2. 중성화 여부 파악하기

 

문제 programmers.co.kr/learn/courses/30/lessons/59409

 

정답

 

설명

CASE 표현식

1
2
3
4
5
6
CASE 컬럼명 | 표현식 WHEN 조건식1 THEN 결과1
                    WHEN 조건식2 THEN 결과2
                          .......
                    WHEN 조건식n THEN 결과n 
                    ELSE 결과
             END
cs

 

참고링크

gent.tistory.com/311

Lev2. 루시와 엘라 찾기

 

문제 programmers.co.kr/learn/courses/30/lessons/59046

 

정답

 

 

Lev2. 이름에 el이 들어가는 동물 찾기

 

문제 programmers.co.kr/learn/courses/30/lessons/59047

 

정답

 

 

Lev4. 보호소에서 중성화한 동물

 

문제 programmers.co.kr/learn/courses/30/lessons/59045

 

정답

ANIMAL_INS와 ANIMAL_OUTS에서 중성화 한 동물을 제외한 결과 값

 

Lev3. 있었는데요 없었습니다

문제 programmers.co.kr/learn/courses/30/lessons/59044

정답 

설명

오답 

이유 : order by 절의 실행 순서가 where 절의 실행 후 이기 때문

 

rownum이란? 

  • 오라클에서 지원하는가상 컬럼으로 쿼리의 결과에 1부터 하나씩 증가하여 붙는 컬럼
  • 사용 용도 : 여러 개의 결과를 출력하는 쿼리문을 실행 후 결과의 개수를 제한하여 가져오는데 씀
  • order by와 함께 사용할 때 주의
  • order by 절의 실행 순서가 where 절의 실행 후이기 때문에 order by와는 관계없이 rownum에 맞는 결과를 출력한 뒤 order by 절을 수행합니다.

 

참고 링크

kimtu89.github.io/oraclerownum/

Lev3. 있었는데요 없었습니다

문제 programmers.co.kr/learn/courses/30/lessons/59042

정답 

 

 

Lev3. 없어진 기록 찾기

문제 programmers.co.kr/learn/courses/30/lessons/59042

정답 

설명

JOIN 중 OUTER JOIN(LEFT OUTER JOIN / RIGHT OUTER JOIN / FULL OUTER JOIN) 사용

  • RIGHT OUTER JOIN : 오른쪽 테이블은 무조건 조회되며, 왼쪽 테이블에 조건이 맞는 것이 있다면 같이 보여줌
  • LEFT OPUTER JOIN : 왼쪽 테이블은 무조건 조회되며, 오른쪽 테이블에 조건이 맞는 것이 있다면 같이 보여줌

 

 

참고링크

it-jin-developer.tistory.com/40

 

1. 이름이 없는 동물의 아이디

문제 programmers.co.kr/learn/courses/30/lessons/59039

정답

 

2. 이름이 있는 동물의 아이디

문제 programmers.co.kr/learn/courses/30/lessons/59407

정답

 

3. NULL 처리하기

문제 programmers.co.kr/learn/courses/30/lessons/59410

정답

1. 입양 시각 구하기 (1)

문제 programmers.co.kr/learn/courses/30/lessons/59412

정답 

설명

(1) 서브 쿼리 - 인라인 뷰 (FROM 절에 사용하는 서브 쿼리)

  • TO_CHAR 함수 사용 : DATETIME 데이터를 'HH24' 형태로 변환
  • 'HH24' : 24시간제를 의미

 

(2) 부모 쿼리

  • HOUR의 값이 9이상 20 미만의 데이터를 추출 > WHERE 절
  • HOUR별로 그룹화 함 > GROUP BY절
  • HOUR을 기준으로 정렬 > ORDER BY절

 

2.  입양 시각 구하기 (2)

문제 programmers.co.kr/learn/courses/30/lessons/59413

정답

MySQL : 변수를 생성하여 연산

ORACLE : Level 을 이용하여 0~23까지의 값을 만들어 줌

설명

(1) 서브 쿼리 - 인라인 뷰 OUTS

  • DATETIME 데이터를 'HH24' 24시간 형태로 변환 
  • GROUP BY을 사용하여, 시간 별 컬럼 개수를 구한다.

 

(2) 서브 쿼리 - 인라인 뷰 HOURS

  • CONNECT BY LEVEL <= NUMBER 함수는 1부터 NUMBER까지 1씩 추가 되는 함수 (계층적 데이터를 표현하기 위해 사용)

 

(3) 부모 쿼리

  • 시간별(HOURS.HOUR)로 입양된 동물(NVL(CNT, 0))을 출력
  • NVL(값, 지정 값) 함수 : 값이 NULL인 경우 지정 값을 출력
  • HOURS의 HOUR과 OUTS의 HOUR을 기준으로 외부 JOIN
  • 시간(HOUR) 순 정렬 > ORDER BY절

1. 고양이와 개는 몇 마리 있을까

문제 programmers.co.kr/learn/courses/30/lessons/59040

정답

 

2. 동명 동물 수 찾기

문제 programmers.co.kr/learn/courses/30/lessons/59041

정답

설명

동물 보호소에 들어온 (4. 동물 이름 중) (1. (5. 두 번 이상 쓰인 이름)해당 이름이 쓰인 횟수)를 조회하는 SQL문을 작성해주세요. 이때 결과는 (3. 이름이 없는 동물은 집계에서 제외)하며, 결과는 (6. 이름 순으로 조회)해주세요.

+ Recent posts