코딩 테스트 연습 21

[프로그래머스] 고양이와 개는 몇 마리 있을까(Oracle, Lv2)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 동물의 타입과 동물의 종류별 동물의 마리수를 조회해야 합니다. - 이 때 결과는 개와 고양이중 고양이가 먼저 조회되어야 합니다. 동물의 타입 : 컬럼 ANIMAL_TYPE 동물의 타입별 : 그룹화 GROUP BY 마리수 : 갯수 함수 COUNT() 먼저 : 정렬 ORDER BY Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - COUNT()를 사용하여 갯수를 불러와주고, GROUP BY를 이용하여 ANIMAL_TYPE별로 그룹화해줍니다. - ORDER BY절을 사용하여 필요한 순서대로 데이터를 정렬시킵니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59040 코딩..

[프로그래머스] 상위 n개 레코드(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 이름(NAME)을 조회해야 합니다. - 이 때 결과는 가장 보호소에 먼저 들어온 동물 한마리만의 이름이 나와야합니다. 들어온 날짜 : 컬럼 DATETIME 먼저 들어온 : 순서 정렬 ORDER BY 가장 먼저 들어온 한마리 : 순번 ROWNUM Solution_1 ① 서브쿼리 - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - ORDER BY절을 이용하여 동물들의 순서를 입양순서(DATETIME)순으로 정렬하여줍니다. - 별칭(AS)은 아무거나 해도 상관이 없으므로 ANIMAL로 해주었습니다. ② 본 쿼리 - SELECT절을 이용하여 ANIMAL의 데이터 중 NAME 컬럼만을 조회합니다. - 순번을 정해주는 ROWNUM을 조건(WHER..

[프로그래머스] 여러 기준으로 정렬하기(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 아이디(ANIMAL_ID)와 이름(NAME), 보호시작일(DATETIME)을 조회해야 합니다. - 이 때 결과는 동물의 이름(NAME)의 순서대로 정렬되어야 하며, 만약 이름이 같다면 보호 시작일(DATETIME)이 나중에 시작한 동물을 먼저 보여줘야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 아이디와 이름, 보호 시작일 조회를 위해 컬럼은 ANIMAL_ID, NAME, DATETIME 만을 가져와줍니다. - ORDER BY절을 사용하여 이름을 순서대로 정렬(ASC)해주고, 같은 이름을 가진 동물들은 나중에 보호 시작한 동물을 먼저 조회하기 위해 역순서대로 정렬(DESC)해준다. + 이름..

[프로그래머스] 동물의 아이디와 이름(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 아이디(ANIMAL_ID)와 이름(NAME)을 조회해야 합니다. - 이 때 결과는 아이디(ANIMAL_ID) 순으로 정렬되어야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 아이디와 이름 조회를 위해 컬럼은 ANIMAL_ID, NAME 만을 가져와줍니다. - ORDER BY절을 사용하면 아이디를 데이터 순서대로 불러올 수 있습니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59403 코딩테스트 연습 - 동물의 아이디와 이름 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조..

[프로그래머스] 어린 동물 찾기(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 동물 중 젊은 동물의 아이디(ANIMAL_ID)와 이름(NAME)을 조회해야 합니다. - 이 때 결과는 아이디(ANIMAL_ID) 순으로 정렬되어야 합니다. +문제 설명에 있는 젋은 동물 옆 작은 파란 숫자 1을 클릭하면 젊은 동물이 어떤 데이터인지 알 수 있습니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 아이디와 이름 조회를 위해 컬럼은 ANIMAL_ID, NAME 만을 가져와줍니다. - 젊은 동물 데이터를 가져오기 위해 WHERE절에 동물의 상태(INTAKE_CONDITION)는 'Aged'가 아닌 것을 조건에 넣어줍니다. - ORDER BY절을 사용하면 아이디를 데이터 순서대로 불러올 수..

[프로그래머스] 아픈 동물 찾기(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 동물 중 아픈 동물의 아이디(ANIMAL_ID)와 이름(NAME)을 조회해야 합니다. - 이 때 결과는 아이디(ANIMAL_ID) 순으로 정렬되어야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 아이디와 이름 조회를 위해 컬럼은 ANIMAL_ID, NAME 만을 가져와줍니다. - 아픈 동물 데이터를 가져오기 위해 WHERE절에 동물의 상태(INTAKE_CONDITION)는 'Sick'을 입력합니다. - ORDER BY절을 사용하면 아이디를 데이터 순서대로 불러올 수 있습니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59036 코딩테스트..

[프로그래머스] 이름이 있는 동물의 아이디(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 동물 중 이름(NAME)이 존재하는 동물의 ID(ANIMAL_ID)를 조회해야 합니다. - 이 때 ID(ANIMAL_ID)는 오름차순으로 정렬되어야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 ID 조회를 위해 컬럼은 ANIMAL_ID 만을 가져와줍니다. - 이름(NAME)이 존재하는 데이터를 가져오기 위해서는 WHERE절 조건에 이름(NAME)은 IS NOT NULL 을 사용하면 됩니다. - ORDER BY절을 사용하면 데이터를 순서대로 불러올 수 있습니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59407 코딩테스트 연습 - 이름..

[프로그래머스] 이름이 없는 동물의 아이디(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 동물 중 이름(NAME)이 없는 채로 들어온 동물의 ID(ANIMAL_ID)를 조회해야 합니다. - 이 때 ID(ANIMAL_ID)는 오름차순으로 정렬되어야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 동물의 ID 조회를 위해 컬럼은 ANIMAL_ID 만을 가져와줍니다. - 이름(NAME)이 없는 데이터를 가져오기 위해서는 WHERE절 조건에 이름(NAME)은 IS NULL 을 사용하면 됩니다. - ORDER BY절을 사용하면 데이터를 순서대로 불러올 수 있습니다. - ORDER BY절의 마지막에 DESC를 붙이면 데이터를 역순으로 조회할 수 있습니다. 출처 https://programmers.c..

[프로그래머스] 역순 정렬하기(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 모든 동물의 이름(NAME)과 보호 시작일(DATETIME)을 조회하여야 합니다. - 결과는 ANIMAL_ID의 역순으로 보여주어야 합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 이름과 보호 시작일 조회를 위해 컬럼 NAME과 DATETIME을 불러와줍니다. - 모든 동물의 데이터를 불러와야하니 WHERE절은 사용하지 않습니다. - ORDER BY절을 사용하면 데이터를 순서대로 불러올 수 있습니다. - ORDER BY절의 마지막에 DESC를 붙이면 데이터를 역순으로 조회할 수 있습니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59035 코딩테..

[프로그래머스] 최댓값 구하기(Oracle, Lv1)

테이블 구조 문제 설명 - ANIMAL_INS 테이블의 가장 최근에 들어온 동물은 언제 들어왔는지 조회하여야합니다. Solution - SELECT문을 이용하여 ANIMAL_INS를 조회합니다. - 그 후 언제 들어왔는지 시간을 알기 위해 컬럼은 DATETIME을 불러옵니다. - 제일 최근의 날짜 즉 가장 큰 날짜 값을 조회하기 위하여 DATETIME에 MAX() 를 씌워줍니다. - AS(Aliases)를 이용하면 컬럼명을 원하는 컬럼명으로 바꿀 수 있습니다. 시간으로 바꾸어줍니다. 출처 https://programmers.co.kr/learn/courses/30/lessons/59415 코딩테스트 연습 - 최댓값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다...