전체 글 117

[3주차] 프로그래밍 기초 주차 (1/5)

ㅇ 오늘 목표 : 파이썬 종합반 강의 4~5주차 수강 + 생활코딩 DB 9, 10강 + SQLD 이론  주말 동안 더운 날씨에 빡세게 움직여서 그런지,유독 월요병이 심하게 왔다.눈마사지기와 커피를 통해 극적으로 극복할 수 있었다 오늘 새로 배웠거나 사용했던 건, 아래의 총 3가지이다. 1. 파이썬의 함수명 'def'는 '정의하다'를 의미하는 'define'에서 유래되었다.    사실 파이썬을 처음 접했던 2017년도부터 궁금했던 내용이라 개인적으로는 의미가 있었다.    함수의 기본 용법은 다음과 같다.# 함수 정의def 함수명(매개변수1, 매개변수2, ...매개변수N): # 함수 내에서 수행할 작업 return 결과값 # (선택) 함수의 결과를 반환 # 함수 호출결과 = 함수명(인수1, 인수..

[2주차] 프로그래밍 기초 주차 (5/5)

ㅇ 내일 목표 : 파이썬 종합반 강의 1~3주차분 수강 + 생활코딩 DB 7, 8강   결국 SQLD 접수를 했다.마지막날이라 그런지 고사장이 많지 않더라.. 어짜피 할 거라면 접수도 빨리해야한다는 걸 알았다.  사실 오늘부터 파이썬에 집중하고 싶었는데, sqld 다음 시험은 최종프로젝트랑 겹친다.항해 당시 최종프로젝트 생각하면 그 무엇도 병행하기 어렵기 때문에 결국 이번에 신청하게 되었다.(지금이 SQL 지식도 가장 따끈따끈하기도 할 듯?) 드디어 주말이다.프로젝트가 없으니 일주일이 참 긴느낌이다.하지만 하루는 빨리가는 아이러니- 이왕 SQLD까지 신청했으니,날씨는 좋더라도 주말도 힘내보자!  ㅇ 주말 목표 : 파이썬 종합반 강의 (4, 5주차) 완강 + 생활코딩 DB 9, 10강 + SQL 및 알고리즘

[2주차] 프로그래밍 기초 주차 (4/5)

ㅇ 오늘 목표 : 데이터 리터러시 완강 + 세션 과제 검증 + 생활코딩 DB 5, 6강   어제 세션에서 어려웠던 2가지 문제가 있다. (덕분에 어제 2시에 잤다..)쿼리나 문제 조건을 모두 부합하는데, 숫자가 달라, 오전 내내 고민했다.결국 A문제는 users테이블의 서브쿼리 내 group by에 불필요한 serverno가 들어있었고, B문제는 평균과 반올림까지 모두 연산된 diffdate에서 '>=10'의 조건을 거니 두 문제 모두 숫자가 틀어질 수밖에 없었다. sum(pay_amount)에 distinct 를 사용하면 안 된다는 것도 이번에 알았는데, group by 마에 불필요한 컬럼이 들어있으면 숫자가 틀어질 수 있다는 것을 알게 되었다.  그래도 두 문제 모두 풀고 나니 마음이 매우 가볍다...

[강의] 데이터 리터러시 (Data Literacy)

ㅇ 데이터 리터러시란? (Data Literacy) : 데이터를 분석하여 목적에 맞게 활용할 수 있는 능력을 의미하며, 크게 나누면 아래와 같다.   - 데이터를 읽는 능력   - 데이터를 이해할 수 있는 능력   - 데이터를 비판적으로 분석하는 능력   - 결과를 의사소통에 활용하는 능력 ※ 참조 : 데이터 리터러시(Data Literacy) : 네이버 블로그 (naver.com) ㅇ 데이터 해석의 오류 사례 데이터를 분석, 시각화하다 보면 동일한 데이터를 갖고 전혀 다른 결론을 도출하기도 한다.아래의 대표적인 오류 예시를 참고하여 동일한 유형의 오류를 대비하자.1. 심슨의 역설 (Simpson’s Paradox): '부분'에서 성립한 대소 관계가 종합된 전체에 대해서는 성립하지 않는 모순적인 경우를 ..

Error_Note

SQL의  Error코드는 총 9자리 숫자 및 간단한 설명으로 구성되어 있다.숫자는 각각 4자리 + 5자리로 구성되는데, 처음 4자리는 오류의 유형을. 다음 5자리는 특정 오류를 식별하는 고유 식별자이다. (e.g SQL Error [1055] [42000] )  Error Messege는 두려워할 대상이 아니라 바른 쿼리를 작성하기 위한 지침서 정도로 해석하는 것이 정신건강에 좋다.     SQL Error [1052] [23000] 그룹화된 해당 컬럼의 참조 값이 없을 경우 발생. 그룹화된 참조 값을 넣어주면 해결된다.e.g) SQL Error [1052] [23000]: Column 'game_account_id' in group statement is ambiguous  SQL Error [105..

[분석] SQL 2024.04.25

[문법] WITH, WITH RECURSIVE 구문

▶ 공통 테이블 표현식 (CTE, Common Table Expression)  WITH 및 WITH RECURSIVE는 공통 테이블 표현식(CTE)을 정의하는 데 사용되는 SQL 구문으로 쿼리 내에서 임시 결과 집합을 정의하고 그것을 다른 쿼리에서 참조할 수 있게 해준다. 이를 통해 복잡한 쿼리를 간결하게 만들고 가독성을 향상시킨다는 장점이 있다. 그러나 오히려  CTE를 무분별하게 사용할 경우엔 오히려 가독성이 저하되고 성능 문제가 발생할 수 있다.  ㅇ WITH 구문- 주 사용처 : 임시 테이블 명의 사용하여 값을 참조.연산할 경우- 사용 방법WITH 임시테이블명 AS ( SELECT * FROM 테이블명) - 주의사항모든 임시 테이블이 결과 집합에 사용되지 않을..

[분석] SQL 2024.04.24

[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기

단순하게 left join을 사용했다가 댓글에 NULL이 포함되어 틀렸다. 그러나 문제에서 "테이블에서 2022년 10월에 작성된 게시글"이라는 항목은 정확히 게시글을 의미하며, 댓글을 무조건적으로 포함하지는 않을 수 있으므로 모호한 경향이 있다고 본다. 같은 로직의 정답을 유지하기 위해서는 "댓글이 없는 경우는 제외"라는 정확한 워딩이 있어야 한다. 문제 자체의 난이도는 크게 어렵지 않다. SELECT a.TITLE , a.BOARD_ID , b.REPLY_ID , b.WRITER_ID , b.CONTENTS , date_format(b.CREATED_DATE,'%Y-%m-%d') CREATED_DATE from USED_GOODS_BOARD a inner join USED_GOODS_REPLY b o..

[분석] SQL 2024.04.23