반응형

전체 글 366

[프로그래머스] 오랜 기간 보호한 동물(1) (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/59044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 보호소에 들어온 datetime은 있지만, 입양을 나간 datetime은 없는 값들을 출력해야 하기 때문에 left outer join을 통해 왼쪽 테이블을 기준으로 오른쪽 테이블을 join 해줍니다 ! ★ join하는 과정에서 left join, left outer join 둘 중 아무거나 사용하셔도 결과값은 똑같습니다 ! ex) from 테이블(왼쪽 테이블) left join..

[프로그래머스] 중복 제거하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/59408 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 칼럼의 범주 안에서 중복 없이 데이터를 출력하고 싶다면 DISTINCT를 사용하면 됩니다. EX) SELECT DISTINCT 칼럼명 FROM 테이블 ... ★ 문제에서는 동물의 이름 갯수를 출력하라고 했으니 COUNT 함수를 사용해서 이름 갯수를 출력하는데, 이때 중복을 제거하기 위해 DISTINCT를 사용하였습니다. 또한 이름이 NULL 값인 데이터는 제외해야 하니, WHER..

[프로그래머스] 같은 숫자는 싫어 (Python)

https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 배열의 처음 수를 stack에 집어넣은 뒤, 배열을 읽으면서 해당 문자가 stack의 마지막 문자와 같은지 다른지를 확인하면 되는 문제입니다. ★ 다른 숫자들만을 결과값으로 리턴해야 하기 때문에 수가 같을 시, 추가하지 않고 다른 경우만 추가해줍니다 !

[프로그래머스] 올바른 괄호 (Python)

https://school.programmers.co.kr/learn/courses/30/lessons/12909# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 들어오는 문자가 괄호 중 어느것인지에 따라 stack에 append해줄지 아닐지를 판단하여 푸는 '스택' 문제입니다. ★ 코드에 달려있는 주석대로 '('이 들어왔을 시 stack.append. ')'가 들어올 경우 스택이 비어있는지 아닌지를 확인해줘야 합니다. 만약 비어있으면 짝지을 수 없는 문자열 s이기 때문에 False를 리턴. 스택의 마지막 문자가 '('일 시, 짝지어서 ..

[프로그래머스] 주문량이 많은 아이스크림들 조회하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/133027 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 주어진 테이블을 보면 JULY 테이블에는 SHIPMENT_ID 별로 FLAVOR이 여러개 존재하는 것을 확인할 수 있습니다. 그렇기에 FIRST_HALF의 TOTAL_ORDER과 합쳐주기 전에 JULY에 있는 주문량들을 FLAVOR별 하나로 만들어주는 과정이 필요합니다 ! ★ JOIN절에 서브트리를 사용하여 FLAVOR과 FLAVOR로 그룹핑을 한 TOTAL_ORDER들의 합을..

[프로그래머스] 중성화 여부 파악하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/59409 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ SEX_UPON_INTAKE 칼럼의 값이 중성화 여부를 나타내는 문자열인 Neutered와 Spayed로 시작하면 '0'를, 아니면 'X'를 출력할 수 있도록 CASE WHEN ~ 구문을 통해 작성하였습니다

[프로그래머스] 오랜 기간 보호한 동물(2) (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/59411#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 보호기간은 '입양되어 나간 날짜 - 보호소에 들어온 날짜'로 구할 수 있습니다. ★ 날짜나 시간의 차이를 구할 때는 DATEDIFF라는 함수를 사용할 수 있습니다. ex) DATEDIFF(구분자,'START_DATE','END_DATE) ★ 보호기간을 두고 그 기간이 긴 순서대로 정렬해야 하기 때문에 ORDER BY절에서 내림차순으로 정렬. ★ 가장 긴 두 마리만 출력해야..

[프로그래머스] 헤비 유저가 소유한 장소 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/77487 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ WHERE절에서 서브쿼리로 HOST_ID별로 그룹핑을 진행합니다. 이 때 조건을 HOST_ID의 갯수가 2개 이상인 것들만 추출할 수 있도록 해줍니다 !

[백준 알고리즘] 1918번: 후위 표기식 (Python)

https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 알파벳 대문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 www.acmicpc.net 소스코드 풀이 ★ 주어진 문자열을 돌면서 해당 문자가 알파벳이면 ans에 그대로 추가해주고, 연산자일 경우 else문으로 가게 됩니다. ★ 해당 연산자가 '('일 경우 따로 stack에서 pop할 것이 없기 때문에 stack에 추가해줍니다. ★ 해당 연산자가 '+' 혹은 '-'일 경우에는 우선순위가 가장 낮은 연산자이기 때문에 stack이 비어있지 않고, 괄호를 만날 때까지 stack안에 들어..

Algorithm/백준 2023.05.18

[프로그래머스] 이름에 el이 들어가는 동물 찾기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/59047 소스코드 풀이 ★ 동물들 중 개이면서 이름에 el이 들어가는 데이터를 찾아서 출력해줘야 하기 때문에 and 연산자를 사용하여 ANIMAL_TYPE이 'Dog'면서 '%문자열%' 데이터에 el이 포함되는 데이터를 찾아줍니다 ! ★ 문자열% : 문자열로 시작하는 데이터 찾기 %문자열% : 문자열을 포함하는 데이터 찾기 %문자열 : 문자열로 끝나는 데이터 찾기

반응형