본문 바로가기

Tech/Problem Solving

[프로그래머스] SQL 고득점 Kit - String, Date 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 https://programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 루시와 엘라 찾기 (level 2) WHERE - IN을 이용하면 해당 데이터를 ()안에 있는 값들에 포함되어 있는지를 찾는다. SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN ("Lucy", "Ella", "Pickle", "Rogan", ..
[프로그래머스] SQL 고득점 Kit - JOIN 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 없어진 기록 찾기 (level 3) JOIN을 사용할 때는 ON을 통해서 두 테이블이 조인될 기준 컬럼을 지정해줘야 함을 잊지말자. 또한 두 테이블의 컬럼을 구분하기 위해서 각 테이블을 AS를 통해 이름을 지정해줘야 한다. SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM ANIMAL_OUTS AS OUTS LEFT JOIN ANIMAL_INS AS INS ON OUTS.ANIMAL_ID = INS.ANIMAL_ID WHERE INS.ANIMAL_ID IS NULL ORDER BY OUTS.ANIMAL_ID 있었는데요 없었습니다 (level 3) LEFT JOIN은 앞 테이블을 기준으로 한 J..
[프로그래머스] SQL 고득점 Kit - IS NULL 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이름이 없는 동물의 아이디 (level 1) WHERE 구문에서 IS NULL이라는 키워드를 통해 NULL에 대한 조건 처리가 가능하다. SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL 이름이 있는 동물의 아이디 (level 1) WHERE 구문에서 IS NOT NULL이라는 키워드를 통해 NULL이 아닌 데이터에 대한 조건 처리가 가능하다. SELECT ANIMAL_..
[프로그래머스] SQL 고득점 Kit - GROUP BY 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 고양이와 개는 몇 마리 있을까 (level 2) GROUP BY는 특정 칼럼 항목들을 기준으로 묶어주는 역할을 하는 구문이다. COUNT와 함께 자주 쓰이는데, 이 문제와 같이 항목 별 레코드 갯수를 구하는데 용이하다. SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) AS count FROM ANIMAL_INS WHERE ANIMAL_TYPE IN ('Cat', 'Dog') GROUP BY AN..
[프로그래머스] SQL 고득점 Kit - SUM, MAX, MIN 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 최댓값 구하기 (level 1) MAX() 키워드를 이용하면 해당 컬럼 값 중 가장 큰 값을 리턴한다. DATETIME의 경우의 MAX는 가장 최근 시간이다. SELECT MAX(DATETIME) AS "시간" FROM ANIMAL_INS 최솟값 구하기 (level 2) MIN() 키워드는 해당 컬럼 값 중 가장 큰 값을 리턴한다. DATETIME의 경우의 MIN은 가장 최근 시간이다. SELECT MIN(DATET..
[프로그래머스] SQL 고득점 Kit - SELECT 프로그래머스에서 제공하는 SQL 고득점 Kit 문제 풀이 코드입니다. (정답 주의) 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 모든 레코드 조회하기 (level 1) ORDER BY를 이용해 특정 컬럼을 기준으로 정렬이 가능하다. SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC 역순 정렬하기 (level 1) ORDER BY 뒤에 ASC를 붙이면 오름차순, DESC를 붙이면 내림차순으로 정렬한다. SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DES..
[프로그래머스] 사칙연산 - Java 코딩테스트 연습 - 사칙연산 ["5", "-", "3", "+", "1", "+", "2", "-", "4"] 3 programmers.co.kr 문제 설명 사칙연산에서 더하기(+)는 결합법칙이 성립하지만, 빼기(-)는 결합법칙이 성립하지 않습니다. 예를 들어 식 1 - 5 - 3은 연산 순서에 따라 다음과 같이 다른 결과를 가집니다. ((1 - 5) - 3) = -7 (1 - (5 - 3)) = -1 위 예시와 같이 뺄셈은 연산 순서에 따라 그 결과가 바뀔 수 있습니다. 또 다른 예로 식 1 - 3 + 5 - 8은 연산 순서에 따라 다음과 같이 5가지 결과가 나옵니다. (((1 - 3) + 5) - 8) = -5 ((1 - (3 + 5)) - 8) = -15 (1 - ((3 + 5) - 8)) = 1 ..
[프로그래머스] 방의 개수 - Java 코딩테스트 연습 - 방의 개수 [6, 6, 6, 4, 4, 4, 2, 2, 2, 0, 0, 0, 1, 6, 5, 5, 3, 6, 0] 3 programmers.co.kr 문제 설명 원점(0,0)에서 시작해서 아래처럼 숫자가 적힌 방향으로 이동하며 선을 긋습니다. ex) 1일때는 오른쪽 위로 이동 그림을 그릴 때, 사방이 막히면 방하나로 샙니다. 이동하는 방향이 담긴 배열 arrows가 매개변수로 주어질 때, 방의 갯수를 return 하도록 solution 함수를 작성하세요. 제한사항 배열 arrows의 크기는 1 이상 100,000 이하 입니다. arrows의 원소는 0 이상 7 이하 입니다. 방은 다른 방으로 둘러 싸여질 수 있습니다. 입출력 예 arrows return [6, 6, 6, 4, 4, 4..