분류 전체보기 85

[TIL] camp_day32_240530

SQL 과제가 너무 어려웠다. 어찌저찌 기본 난이도 문제까지는 풀어서 냈는데, 정답 쿼리를 보고 내 쿼리를 보니까 함수도 이상한 거 쓰고 풀이도 맞는지 의문스러워졌다. 오늘은 못했지만 내일 꼭 코드 리뷰 해야겠다.학습 내용정규 표현식(SQL)복잡한 검색을 할 때 패턴을 구체화 할 수 있는 강력한 기능단순히 Like ‘%word%’ 문을 쓰는 것을 넘어, 첫 번째 글자로는 어떤 패턴의 문자가 오고, 중간에 어떤 구조가 반복되고, 맨 마지막에는 어떤 문자로 끝나야 하는 등, 자세한 조건을 걸어서 필터링 할 수 있다.기본적으로 REGEXP 와 RLIKE 는 주어진 문자열이 정규 표현식과 일치하면 True(1)를 반환한다.SQL#1 pattern 일 경우WHERE column_1 REGEXP 'abc' ..

[TIL] camp_day31_240529

오늘로 꽉 채운 한 달을 데이터 분석 공부에 투자했다. 주차로는 벌써 7주차라는 게 실감이 안 나지만...학습 내용나는 어렵게 풀었는데 다른 사람들은 엄청 쉽게 풀었던 문제 기록(SQL)문제 : 리트코드_두 번째로 높은 급여SQL 라이브 강의 때 과제 쿼리도 그렇고, 다른 사람들 답을 보면 간결하게 작성하는데 내 쿼리는 늘 구구절절문이라 남기는 기록.최종적으로 풀이한 쿼리도 짧아진 편인데, 내가 열 몇 줄로 코딩한 걸 다른 사람들은 세 줄로 끝내서 살짝 충격이었다. SQL # 내가 작성한 쿼리 SELECT IFNULL(MAX(salary),NULL) AS SecondHighestSalary FROM ( SELECT CASE WHE..

[TIL] camp_day30_240528

앞으로 4주 동안 함께 학습하고 프로젝트를 진행할 팀원들을 만났다. 이번 프로젝트도 무사히 끝나길!이번 주차부터는 통계학 기초와 머신러닝에 대해 학습할 예정.학습 내용약 4주 동안 붙잡고 있던 문제를 해결했다(SQL)문제 : 프로그래머스_자동차 대여기록 별 대여금액 구하기풀이 과정 정리where 절에 자동차 종류 = '트럭' 조건 걸어서 필터링Rental_History 테이블에는 자동차 종류와 일일요금이 없으므로 Car 테이블 조인시작일과 종료일 사이 일수를 구해서(DATEDIFF +1) Discount Plan 테이블과 '대여기간 조건' 을 같은 조건으로 출력 & 조인할인율을 적용하여 대여 기간의 대여금액 구하기(컬럼명 : FEE)정렬 조건 적용하기실패했던 쿼리들. 그동안 왜 틀렸는가대여기간이 7일 미..

[TIL] camp_day29_240527

데이터 분석 캠프 7주차 첫 날. 그동안 프로젝트를 함께했던 팀원들과 마지막으로 캠프파이어(?)를 하면서 인사를 나누고 프로젝트 회고도 했다.학습 내용Delete 문으로 SQL 에서 삭제하기DELETE 문을 사용하면 SQL에서 데이터를 삭제할 수 있다. 기본 용법은 아래와 같음 SQL DELETE FROM table_name WHERE criteria # where 절에 조건을 주지 않으면, 테이블의 내용 전체를 삭제한다.Drop을 쓰면 테이블 전체가 제거되고, Truncate을 쓰면 테ㅔ이블 내 모든 데이터만 삭제되고 빈 테이블만 남는다.활용하여 풀이한 문제 리트코드_중복된 이메일 지우기 SQL WITH CTE AS ( SELECT MIN(id) OVER (PAR..

[WIL] 2024_w21_주간 회고

캡처본이 남아있길래 리트코드에서 시작했던 코딩테스트 챌린지를 돌아보았다. 5월 10일에 이 챌린지를 시작했는데, 그 때 까지 28문제를 풀었었고,2주가 지난 지금 12 문제를 더 풀어서 총 40문제를 풀이했다. 이제 앞으로 10문제만 더 풀면 내 계정에 저 뱃지가 생긴다!어려운 문제들만 남긴 했지만 6월 전에 획득할 수 있으면 좋겠다.이번 주의 목표팀 프로젝트 성공적으로 완료하기 → 완료 : 전체적인 진행 흐름이 너무 좋았던 프로젝트였다.파이썬 위키독스 100번까지 풀기 → 실패 : 프로젝트 외에는 거의 못 할 것이라 생각하긴 했지만 진짜 못할 줄 몰랐다.SQLD 짬내서 공부하기 → 실패 : 내일 시험인데 거의 제로 베이스로 시험보러 가야 한다. ㅎㅎㅎ 다음에 다시 봐야지. 이번 주의 학습 키워드RFM ..

[TIL] camp_day28_240524

프로젝트 발표까지 무사히 끝났다. 프로젝트 결과는 나중에 따로 정리할 생각이다.학습 내용SQL에서도 Python의 for문 처럼 반복하여 결과를 출력하게 할 수 있을까?!계속 못 풀고 있던 코딩테스트 문제가 있었다.문제 : 프로그래머스_입양 시각 구하기(2)오답 이유 : 0시부터 23시까지 모든 시간대에 대해 count 결과가 0이어도 행이 출력되어야 함. 하지만 단순히 GROUP BY를 한 결과로는 데이터셋에 존재하는 시간대의 결과만 도출할 수 있어 오답 처리됨.정답 탐색 과정(1) : 다른 코딩테스트에서 풀었던 문제가 유사한 형태의 결과를 요구해서, 이 때 사용한 방법(UNION 활용)을 적용할 수 있었다. SQL -- 진짜 바보같이 풀어서 조금 부끄러움... SELECT t_..

[TIL] camp_day27_240523

프로젝트 마무리 하느라 12시 직전에 끝났다. 전체 발표 흐름과 PPT 제작, 발표 준비가 동시 다발적으로 진행되고 끝났다. SQL 챌린지반 두 번째 세션이 진행되었고, 새로운 문법을 배워서 충격 그 자체였다!팀 프로젝트끝나지 않을 것 같던 프로젝트가 그래도 마무리가 되었고, 24일 발표만 남겨두고 있다.이번 프로젝트에서는 팀장을 맡은 만큼 우리 프로젝트의 전체적인 EDA가 잘 전개되도록 하는 것이 목표였다.팀 노션 페이지에 각 진행 단계 별 페이지를 만들어 내용을 작성하고 관리했다.오전 팀 스크럼 시간에 하루 동안 진행되어야 하는 목표치를 설정하고, 오후 팀 스크럼 시간에는 그 날 진행한 분량에 대해 회고했다.진행 흐름을 놓치지 않도록 기획 단계에서 설정한 목표와 진행 사항이 일치하는지 계속 점검했다...

[TIL] camp_day26_240522

프로젝트 결론이 대략적으로 나왔는데, 뭔가 조금 아쉽다.계속 파이썬 과제와 프로젝트 때문에 밀려서 코테를 못 풀고 있었는데 SQL 문제 막혔던 두 개를 비롯해서 오랜만에 문제를 많이 풀었다.학습 내용JOIN 시 조건을 범위로 지정할 수 있다.문제 : 리트코드_평균 판매 금액 구하기상품별로, 기간에 따라 가격이 변경될 때 각각의 상품들의 평균 판매 금액을 구해서 출력하는 문제였다.지금까지 JOIN 을 할 때 정확히 일치하는 값만 Key로 설정했는데, 처음으로 범위를 지정해도 된다는 것을 알게된 문제.두 개의 테이블을 조인해야 하는데, (1) product_id 끼리 일치하고, (2) 상품 판매일이 특정 가격의 시작일과 종료일 기간 내에 포함되는 값끼리 조인해야 했다.작성한 쿼리문 SQL # 처음 작성..

[TIL] camp_day25_240521

하루 종일 프로젝트로 정신 없었고, SQL 챌린지반 첫 세션을 들었다. 몰랐던 함수를 알게 돼서 막혔던 코테를 풀 수 있을 것 같다.학습 내용Window Function(SQL)GROUP BY 로 그룹핑한 효과를 내주지만, 모든 행을 출력하고 싶을 때 사용한다!GROUP BY 구문과 병행하여 사용이 불가능하고, 다른 함수와 다르게 중첩 사용이 불가능하다.기본 문법 SQL SELECT WINDOW FUNCTION () OVER (PARTITION BY ORDER BY)함수 종류순위ROW_NUMBER() : 중복 순위를 매기지 않고, 어떻게든 데이터 간에 순위를 매겨주는 함수RANK() : 중복 순위를 매김. 공동 n등이 존재하고, 그 다음 순위는 공동 순위 인원 수만큼 밀린다. 즉, 공동 1등 2명이..

[TIL] camp_day24_240520

벌써 데이터분석 캠프 여섯 번째 주차 시작이다.팀 프로젝트데이터 분석에 필요한 내용들은 배웠지만, "그래서 데이터 분석 과정을 어떻게 설계하는 건데?" 라는 의문이 종일 들었던 하루였다.프로젝트 기획과 목적 설정 단계는 잘 이루어졌는데... 막상 데이터 분석을 하니까 이런저런 문제에 부딪혔다.기술적인 문제 : 파이썬을 아직 자유자재로 다루는 게 아니다보니, 작업의 결과물은 알겠는데 코드를 모르겠는 일이 반복되었다.데이터 분석 절차론적 지식의 부재 : 기초통계량을 통해 '어떤 걸 더 확인하자' 라는 목적의 가설을 설정했으나, 후속으로 어떤 작업을 해야 하는지를 몰라 헤멨다.데이터셋 관련 정보 부족 : 그래도 이건 어느 정도 분석해보면서 파악하고 있다. 내일은 오늘보다 우리의 프로젝트가 보다 발전되길 바라며..