본문 바로가기

Programmers/SQL

[Programmers/SQL] 중복 제거하기 1. 테이블 구조 2. 문제 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다. 3. 풀이 이름에 NULL을 포함시키지 않기 위해 COUNT의 기준을 NAME으로 잡고, 중복을 제거하기 위해 COUNT(DISTINCT NAME) 을 사용한다. SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS; [참조] programmers.co.kr/learn/courses/30/lessons/59408 코딩테스트 연습 - 중복 제거하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_I.. 더보기
[Programmers/SQL] 동물 수 구하기 1. 테이블 구조 2. 문제 동물 보호소에 동물이 몇 마리 들어왔는지 조회하는 SQL 문을 작성해주세요. 3. 풀이 COUNT(*)를 사용해서 모든 동물의 수를 센다. SELECT COUNT(*) FROM ANIMAL_INS; [참조] programmers.co.kr/learn/courses/30/lessons/59406 코딩테스트 연습 - 동물 수 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 더보기
[Programmers/SQL] 최솟값 구하기 1. 테이블 구조 2. 문제 동물 보호소에 가장 먼저 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요. 3. 풀이 가장 먼저 들어왔으면 DATETIME 값이 가장 작으므로 MIN(DATETIME)을 사용한다. SELECT MIN(DATETIME) FROM ANIMAL_INS; [참조] programmers.co.kr/learn/courses/30/lessons/59038 코딩테스트 연습 - 최솟값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 .. 더보기
[Programmers/SQL] 최댓값 구하기 1. 테이블 구조 2. 문제 가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요. 3. 풀이 가장 최근이면 DATETIME 값이 가장 크므로 MAX(DATETIME)을 사용한다. SELECT MAX(DATETIME) FROM ANIMAL_INS; [참조] programmers.co.kr/learn/courses/30/lessons/59415 코딩테스트 연습 - 최댓값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers... 더보기
[Programmers/SQL] 상위 n개 레코드 1. 테이블 구조 2. 문제 동물 보호소에 가장 먼저 들어온 동물의 이름을 조회하는 SQL 문을 작성해주세요. 3. 풀이 DATETIME 순으로 정렬하기 위해 ORDER_BY DATETIME ASC를 사용하고, LIMIT 1을 통해 가장 처음 값 하나만 반환한다. (ORDER BY의 default 가 ASC이므로 생략 가능하다.) SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME ASC LIMIT 1; [참조] programmers.co.kr/learn/courses/30/lessons/59405 코딩테스트 연습 - 상위 n개 레코드 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANI.. 더보기
[Programmers/SQL] 여러 기준으로 정렬하기 1. 테이블 구조 2. 문제 동물 보호소에 들어온 모든 동물의 아이디와 이름, 보호 시작일을 이름 순으로 조회하는 SQL문을 작성해주세요. 단, 이름이 같은 동물 중에서는 보호를 나중에 시작한 동물을 먼저 보여줘야 합니다. 3. 풀이 ORDER BY NAME ASC 를 먼저 사용해서 이름에 대하여 오름차순으로 정렬하고, 이름이 같을 때를 처리하기 위해 뒤에 DATETIME DESC를 추가해준다. SELECT ANIMAL_ID, NAME, DATETIME FROM ANIMAL_INS ORDER BY NAME ASC, DATETIME DESC; [참조] programmers.co.kr/learn/courses/30/lessons/59404 코딩테스트 연습 - 여러 기준으로 정렬하기 ANIMAL_INS 테이블.. 더보기
[Programmers/SQL] 동물의 아이디와 이름 1. 테이블 구조 2. 문제 동물 보호소에 들어온 모든 동물의 아이디와 이름을 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요. SQL을 실행하면 다음과 같이 출력되어야 합니다. 3. 풀이 ANIMAL_ID 순으로 정렬하기 위해 ORDER_BY ANIMAL_ID ASC를 사용한다. (ORDER BY의 default 가 ASC이므로 생략 가능하다.) SELECT ANIMAL_ID, NAME FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC; [참조] programmers.co.kr/learn/courses/30/lessons/59403 코딩테스트 연습 - 동물의 아이디와 이름 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS .. 더보기
[Programmers/SQL] 어린 동물 찾기 1. 테이블 구조 2. 문제 동물 보호소에 들어온 동물 중 젊은 동물(= INTAKE_CONDITION이 Aged가 아닌 경우를 뜻함)의 아이디와 이름을 조회하는 SQL 문을 작성해주세요. 이때 결과는 아이디 순으로 조회해주세요. 3. 풀이 아픈 동물을 찾기 위해 WHERE INTAKE_CONDITION != 'Aged'를 사용하고 ANIMAL_ID 순으로 정렬하기 위해 ORDER_BY ANIMAL_ID ASC를 사용한다. (ORDER BY의 default 가 ASC이므로 생략 가능하다.) SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION != 'Aged' ORDER BY ANIMAL_ID ASC; [참조] programmers.co.kr/le.. 더보기