분류 전체보기
-
<TIL> 2024-01-11내일배움캠프(데이터 분석 부트캠프 1기)/TIL & WIL 2024. 1. 11. 23:13
오늘 한 것 팀프로젝트 발제 프로젝트 데이터 탐색 데이터 전처리 및 시각화 오늘 오전 9시부터 1월 11일부터 18일까지 진행되는 프로젝트 발제가 진행되었다. 이번 프로젝트는 도메인을 설정해 설정한 데이터를 SQL을 활용해 데이터를 분석하는 프로젝트이다. 팀 프로젝트의 도메인은 마케팅으로 선택했기 때문에 고객과 상품 구매에 대한 데이터를 위주로 탐색을 했고 캐글의 고객 성격 분석 데이터를 선정하였다. https://www.kaggle.com/datasets/imakash3011/customer-personality-analysis Customer Personality Analysis Analysis of company's ideal customers www.kaggle.com 과제의 조건에 SQL에 익숙..
-
<TIL> 2024-01-10내일배움캠프(데이터 분석 부트캠프 1기)/TIL & WIL 2024. 1. 10. 22:09
오늘 한 것 Python 개인과제 해설강의 수강 Python 알고리즘 코드카타 SQL 코드카타 개인 및 팀 프로젝트 도메인 결정 Python 개인 과제의 경우 수월하게 다 풀고 제출했기 때문에 대부분 문제가 정답이었는데 1문제 email을 판독하는 문제에서만 문제의 함정에 걸려서 오답처리를 당했다. 예시로 준 email_list에서 "wrongemail@.com"이 이름부터 잘못된 이메일이라고 생각했던 것이었다. email_list = [ "example@example.com", "wrongemail@.com", "anotherexample.com", "correct@email.co.uk" ] 문제의 올바른 이메일을 판단하는 조건에 따르면 wrongemail@.com은 @기호 앞에 하나 이상의 문자를 가..
-
<프로그래머스> 자동차 대여 기록 별 대여 금액 구하기코딩테스트/SQL 코딩테스트 2024. 1. 10. 21:56
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/151141 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제요구사항 세 테이블을 조인하여 자동차 종류가 '트럭'인 자동차의 대여 기록에 대해서 대여 기록 별로 대여 금액(컬럼명: FEE)을 구하여 대여 기록 ID와 대여 금액 리스트를 출력 결과는 대여 금액을 기준으로 내림차순 정렬 대여 금액이 같은 경우 대여 기록 ID를 기준으로 내림차순 정렬 정답코드 1) MySQL WITH RENT_HISTORY(HISTORY_ID, CAR_ID, TE..
-
<프로그래머스> 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기코딩테스트/SQL 코딩테스트 2024. 1. 10. 21:41
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/157340 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 요구사항 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 2022년 10월 16일에 대여중인 자동차의 경우 '대여중', 대여 중이지 않은 자동차의 경우 '대여 가능'을 표시하는 컬럼(AVAILABILITY)을 추가하여 자동차 ID와 AVAILABILITY 리스트를 출력하는 SQL문 작성 반납 날짜가 2022년 10월 16일인 경우에도 대여중으로 표시 결과는 ..
-
<TIL> 2024-01-09내일배움캠프(데이터 분석 부트캠프 1기)/TIL & WIL 2024. 1. 9. 23:46
오늘 한 것 알고리즘 특강 2일차 수강 Python 알고리즘 코드 카타 재귀 쿼리 관련 학습 알고리즘 특강 알고리즘 2일차 강의는 1일차 때 미처 다 끝내지못한 자료구조(트리, 그래프) 강의를 마저 듣고 여러 알고리즘에 대해서 간단히 소개하는 방식으로 진행되었다. 완전 탐색, 이분 탐색, 그리디 알고리즘 등에 대해서 간단히 배웠고 재귀함수에 대해서만 조금 자세히 다루었다. 팩토리얼을 반복문으로 먼저 구현해본 뒤 함수를 재귀 호출하는 형태로 구현하는 코드를 작성하는 실습을 진행했다. 코드는 아래와 같다. # 반복문을 통한 팩토리얼 구현 def factorial(n) : answer = 1 for i in range(1, n+1) : answer*=i return answer # 함수 재귀호출을 통한 팩토리..
-
<프로그래머스> 입양 시각 구하기(2)코딩테스트/SQL 코딩테스트 2024. 1. 9. 14:47
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/59413 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 요구사항 ANIMAL_OUTS 테이블에서 몇 시에 보호소에서 입양이 가장 활발하게 일어나는지를 알아보고자 함 0시부터 23시까지 각 시간대별로 입양이 몇 건 발생했는지 조회 결과는 시간대 순으로 정렬 위 예시처럼 결과가 출력되어야 함 문제 요구사항대로 0시부터 23시까지 입양 건수를 계산하여야하는데 주어진 테이블에서 쿼리에서 시간으로 GROUP BY 하여 출력해보면 0시부터 6시와 ..
-
<SQL : Oralce> CONNECT BY LEVEL (with DUAL)카테고리 없음 2024. 1. 9. 14:47
지난 글에서는 MySQL에서 재귀쿼리를 통해 데이터를 반복문처럼 생성하는 방법에 대해서 알아보았다. MySQL 재귀쿼리 https://jinhyunbae.tistory.com/107 RECURSIVE(재귀 쿼리) SQL을 하다보면 연속적인 숫자 데이터를 생성할 필요가 있을 수 있다. 이 때 프로그래밍이라면 반복문을 돌려서 쉽게 해결할 수 있는데 SQL에는 해당하는 기능이 없을까 SQL에서는 재귀 쿼리를 이 jinhyunbae.tistory.com Oracle에서도 MySQL과 같이 WITH RECURSIVE를 제공하긴하지만 Orcle에서만 지원하는 LEVEL과 CONNECT BY를 이용해 WITH RECURSIVE처럼 구현하는 방법을 알아보았다. FROM 절을 보면 뜬금없이 DUAL이라는 이름의 테이블이..
-
<SQL : MySQL> RECURSIVE(재귀 쿼리)데이터 분석 관련 공부 2024. 1. 9. 14:04
SQL을 하다보면 연속적인 숫자 데이터를 생성할 필요가 있을 수 있다. 이 때 프로그래밍이라면 반복문을 돌려서 쉽게 해결할 수 있는데 SQL에는 해당하는 기능이 없을까 SQL에서는 재귀 쿼리를 이용하여 해당 문제를 해결한다. 재귀 쿼리는 프로그래밍 언어에서 재귀함수와 유사하게 동작한다. MySQL에는 WITH문 뒤에 RECURSIVE문을 붙여 재귀적으로 CTE를 하는 것을 통해 이를 구현한다. WITH RECURSIVE는 세 가지 부분으로 구성된다. 재귀 CTE의 기본 결과 집합을 형성하는 초기 쿼리를 앵커멤버 (Anchor member) 라고 부른다. UNION ALL 아래에 재귀 쿼리 부분은 CTE의 이름을 참조하는 쿼리로 재귀멤버 (Recursive member) 라고 부른다. 마지막으로 재귀 멤버..