본문 바로가기

코딩테스트 준비/SQL 코테3

MySQL 문법 정리 MYSQL 문법정리 코딩테스트 직전에 SQL 문법을 훑어보기 좋게 정리하였다. 꾸준히 업데이트 예정이다. ◆ DISTINCT : 중복제거 SELECT count(DISTINCT NAME) ... - NAME의 개수를 세지만, 중복을 제거하여 count한다. ◆ SET : 변수생성 SET @VAR := 1; SELECT (@VAR := @VAR + 1) .... - VAR 변수 선언하고 초기값을 1로 설정 - VAR 변수에 1씩 더해서 결과를 출력 ◆ CASE: 조건문 SELECT (CASE WHEN 조건식1 THEN 결과1 (CASE WHEN 조건식2 THEM 결과2 ELSE 나머지 결과 END) - 조건식 1에 해당하면 결과1을 출력, 조건식 2에 해당하면 결과 2를 출력, 그 외에는 나머지 결과 출력.. 2022. 3. 3.
[프로그래머스 SQL 고득점 KIT] 문제 풀이2 (MySQL) 단계 JOIN 1. 없어진 기록 찾기 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS O LEFT OUTER JOIN ANIMAL_INS I ON O.ANIMAL_ID = I.ANIMAL_ID WHERE I.ANIMAL_ID IS NULL ORDER BY O.ANIMAL_ID; 입양 기록은 그대로 있으니까 일단 입양기록테이블을 왼쪽에 두고 보호소 기록 테이블과 Left Outer Join을 한다. 입양 기록 A, B, E | 보호소 기록 B, C, E LEFT OUTER JOIN = (A, null), (B, B), (E,E)가 남게 된다. 잃어버린 기록은 보호소 기록에서 null로 조인된 행이다. 따라서 조건절에 I.ANIMAL_ID IS NULL 을 작성했다. 2. 있었.. 2022. 3. 3.
[프로그래머스 SQL 고득점 KIT] 문제 풀이 (MySQL) https://programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 모든 레코드 조회하기 간단하게 모든 레코드를 조회하는 문제. SQL을 공부했다면 누구나 바로 풀 수 있는 문제다! SELECT ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC; 오름차순으로 정렬을 하는 경우, ORDER BY는 오름차순이 디폴트라 ASC는 .. 2022. 3. 2.