본문 바로가기

MySQL13

프로그래머스 DATETIME에서 DATE로 형 변환 (String, Date) - 문제 핵심 조건 1. 각 동물의 아이디와 이름, 들어온 날짜를 조회하는 SQL문을 작성해주세요. => 들어온 날짜 : 결과에 맞게 YYYY-MM-DD 형식을 만들기 위해서 DATETIME 값의 왼쪽 10 개 값을 취하면 된다, LEFT 2. 이때 결과는 아이디 순으로 조회해야 합니다. => 아이디 순으로 정렬 : ORDER BY - 정답 코드 SELECT ANIMAL_ID, NAME, LEFT(DATETIME, 10) AS 날짜 FROM ANIMAL_INS ORDER BY ANIMAL_ID; - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59414 코딩테스트 연습 - DATETIME에서 DATE로 형 변환 ANIMAL_INS 테이블은 동물 보호소에 들어온.. 2020. 12. 8.
프로그래머스 이름에 el이 들어가는 동물 찾기 (String, Date) - 문제 핵심 조건 1. 동물 보호소에 들어온 동물 이름 중, 이름에 EL이 들어가는 개의 아이디와 이름을 조회하는 SQL문을 작성해주세요. => 이름에 EL이 들어가는 개 : LIKE, WHERE * % 위치에 따라 포함할 글자 영역이 정해진다. 2. 이때 결과는 이름 순으로 조회해주세요. => 결과는 이름 순으로 정렬 : ORDER BY - 정답 코드 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE NAME LIKE'%EL%' AND ANIMAL_TYPE = "DOG" ORDER BY NAME; - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59047 코딩테스트 연습 - 이름에 el이 들어가는 동물 찾기 ANIMAL_INS.. 2020. 12. 7.
프로그래머스 루시와 엘라 찾기 (String, Date) - 문제 핵심 조건 1. 동물 보호소에 들어온 동물 중 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물 찾기 => 동물 중 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물 찾기 : IN(,,,,,) 2. 아이디와 이름, 성별 및 중성화 여부를 조회 => 아이디와 이름, 성별 및 중성화 여부를 조회 : SELECT 컬럼1, 컬럼2, ... - 정답 코드 SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN ("LUCY", "ELLA", "PICKLE", "ROGAN", "SABRINA", "MITTY") ORDER BY ANIMAL_ID; - 문제링크 :.. 2020. 12. 6.
프로그래머스 중복 제거하기 (SUM, MAX, MIN) - 문제 핵심 조건 1. 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. => 동물의 이름은 몇 개인지 조회 : COUNT 2. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다. => 중복되는 이름은 하나 : DISTINCT - 정답 코드 SELECT COUNT(DISTINCT(NAME)) AS "COUNT" FROM ANIMAL_INS - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59408 코딩테스트 연습 - 중복 제거하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYP.. 2020. 12. 3.
프로그래머스 이름이 있는 동물의 아이디 (IS NULL) - 문제 핵심 조건 1. 동물 보호소에 들어온 동물 중, 이름이 있는 동물의 ID를 조회하는 SQL 문을 작성해주세요. => 이름이 있는 동물의 ID를 조회 : IS NULL 2. 단, ID는 오름차순 정렬되어야 합니다. => 오름차순 정렬 : ORDER BY - 정답 코드 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NOT NULL; - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59407 코딩테스트 연습 - 이름이 있는 동물의 아이디 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATE.. 2020. 12. 2.
프로그래머스 입양 시각 구하기(1) (GROUP BY) - 문제 핵심 조건 1. 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회 => 각 시간대별로 입양이 몇 건이나 발생했는지 조회 : GROUP BY, HOUR => 09:00부터 19:59까지 : WHERE hour(datetime) >= 9 and hour(datetime) 시간대 순으로 정렬 : ORDER BY, HOUR * 칼럼명 : DATETIME(입양시각) - 정답 코드 SELECT HOUR(DATETIME), COUNT(DATETIME) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) >= 9 AND HOUR(DATETIME) < 20 GROUP BY HOUR(DATETIME) ORDER BY HOU.. 2020. 11. 22.
프로그래머스 있었는데요 없었습니다 (JOIN) - 문제 핵심 조건 1. 보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회하는 SQL문을 작성 => 보호 시작일과 입양일 테이블에 둘 다 동물이 존재해야 하므로 INNER JOIN => 시작일보다 입양일이 더 빠른 동물 : WHERE ins.datetime > outs.datetime 2. 결과는 보호 시작일이 빠른 순으로 조회해야합니다. => 보호 시작일 순으로 조회 : ORDER BY * 테이블 : ANIMAL_INS(보호소에 들어온 동물들), ANIMAL_OUTS(보호소에서 나간 동물들) * 칼럼명 : ANIMAL_ID(아이디), NAME(이름), DATETIME(보호시작일) - 정답 코드 SELECT INS.ANIMAL_ID, INS.NAME FROM ANIMAL_INS AS INS .. 2020. 11. 21.
프로그래머스 보호소에서 중성화한 동물 (JOIN) - 문제 핵심 조건 1. 보호소에 들어올 당시에는 중성화 되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물의 아이디와 생물 조회 => 보호소에 들어올 당시에는 중성화 되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물 : ins 테이블과 outs 테이블 모두 동물의 ID가 같아야 하고 존재해야 하므로 INNER JOIN => 보호소에 들어올 당시에는 중성화 되지 않음 : Spayed 와 Neutered 를 포함하지 않음 -> LIKE, AND => 보호소를 나갈 당시에는 중성화 되지 않음 : Spayed 또는 Neutered 를 포함함 -> LIKE, OR * 중성화를 거치지 않은 동물 : Intact, 중성화를 거친 동물 : Spayed 또는 Neutered 2. 이름을 조회하는 아이디 순으로 조.. 2020. 11. 20.
프로그래머스 없어진 기록 찾기 (JOIN) - 문제 핵심 조건 1. 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물의 ID와 이름을 ID 순으로 조회 => 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물 : INS를 left, OUTS를 right 라고 보았을 때, RIGHT JOIN (동물의 ID가 INS 에는 없고, OUTS에는 있어야 하기 때문임) => 보호소에 들어온 기록이 없는 동물 : INS에서의 동물 아이디 값이 NULL => ID 순으로 조회 : ORDER BY * 테이블 : ANIMAL_INS(보호소에 들어온 동물들), ANIMAL_OUTS(보호소에서 나간 동물들) * 칼럼명 : ANIMAL_ID(아이디), NAME(이름) - 정답 코드 SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM .. 2020. 11. 19.