본문 바로가기

Algorithm/SQL

(47)
(MYSQL) - 프로그래머스 (SQL 고득점 kit - JOIN) : 없어진 기록 찾기 programmers.co.kr/learn/courses/30/lessons/59042 코딩테스트 연습 - 없어진 기록 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr OUTER JOIN을 사용해보는 문제였습니다. OUTER JOIN에는 두 가지가 있습니다. LEFT OUTER JOIN과 RIGHT OUTER JOIN입니다. LEFT OUTER JOIN JOIN문 좌측에서 SELECT한 테이블의 모든 데이터를 조회한 후 우측에서 고..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - GROUP BY) : 오랜 기간 보호한 동물(2) programmers.co.kr/learn/courses/30/lessons/59411 코딩테스트 연습 - 오랜 기간 보호한 동물(2) ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 외래 키로 다른 테이블을 참조하여 원하는 데이터를 얻는 문제였습니다. 풀이방법 1. 테이블 및 열 선택 : 먼저 테이블을 선택합니다. ANIMAL_INS를 A로 정의하고 ANIMAL_OUTS를 B로 정의합니다. 그 후 열을 선택합니다. A테이블의 열들인 A..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - GROUP BY) : 입양 시각 구하기(1) programmers.co.kr/learn/courses/30/lessons/59412 코딩테스트 연습 - 입양 시각 구하기(1) ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 programmers.co.kr GROUP BY ~ HAVING, DATETIME의 특정 문자를 추출하는 문제였습니다. 풀이방법 1. 열 선택 : HOUR함수를 이용합니다. HOUR(DATETIME)을 하게 되면 시간만 추출할 수 있습니다. 해당 열을 HOUR로 바꿔줍니다. AS절을 사용해도 무방하나 공백으..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - GROUP BY) : 동명 동물 수 찾기 programmers.co.kr/learn/courses/30/lessons/59041 코딩테스트 연습 - 동명 동물 수 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr GROUP BY HAVING을 사용해보는 문제였습니다. 풀이방법 1. 열을 선택합니다 : ANIMAL_INS table로부터 NAME, COUNT(NAME)을 SELECT로 선택합니다. 2. 열 이름을 변경합니다. : COUNT(NAME)을 select하게 된다면 ..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - GROUP BY) : 고양이와 개는 몇 마리가 있을까 programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr GROUP BY를 사용해보는 문제였습니다. 풀이방법 1. 열 정하기 : 먼저 ANIMAL_INS 테이블로 부터 선택할 두개의 열을 SELECT로 정합니다. ANIMAL_TYPE과 ANIMAL_TYPE의 특정 행 개수를 센 결과 값 열 두 개입니다. 2. ..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - String, Date) : 중성화 여부 파악하기 programmers.co.kr/learn/courses/30/lessons/59409 코딩테스트 연습 - 중성화 여부 파악하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr CASE ~ WHEN THEN ~ ELSE ~ END AS를 사용하는 문제였습니다. 풀이방법 1. 중성화 여부 column 인 SEX_UPON_INTAKE가 Intact가 들어있지 않다면 수술을 했다는 의미이므로 'O' 2. Else의 경우에는 'X' 3. CAS..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - String, Date) : 루시와 엘라 찾기 programmers.co.kr/learn/courses/30/lessons/59046 코딩테스트 연습 - 루시와 엘라 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr in을 이용하는 문제였습니다. 풀이방법 1. in을 모른다면 or와 where절을 계속해서 반복해야 합니다. SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME = 'Lucy' or NAME = 'E..
(MYSQL) - 프로그래머스 (SQL 고득점 kit - IS NULL) : NULL 처리하기 programmers.co.kr/learn/courses/30/lessons/59410 코딩테스트 연습 - NULL 처리하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr Data가 NULL일 조건에 특정 문구로 data 값을 대체하는 문제였습니다. 풀이방법 MYSQL에서는 column을 select로 선택시 ifnull함수를 이용해 null일 경우 대체로 넣을 값을 지정할 수 있습니다. Code SELECT ANIMAL_TYPE, I..