전체 글

데이터 분석가로 나아가는 중
·✨Today I Learned
20240611 Today I Learned알고리즘 SQL20번 - 가격이 제일 비싼 식품의 정보 출력하기FOOD_PRODUCT 테이블에서 가격이 제일 비싼 식품의 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회하는 SQL문을 작성select product_id, product_name, product_cd, category, pricefrom food_productorder by price desc limit 1 21번 - 이름이 없는 동물의 아이디 출력하기동물 보호소에 들어온 동물 중, 이름이 없는 채로 들어온 동물의 ID를 조회하는 SQL 문을 작성. 단, ID는 오름차순 정렬select animal_idfrom animal_inswher..
20240607 TILwindow functionWindow Function의 기본 구조window_function(argument) over (partition by 그룹 기준 컬럼 order by 정렬 기준)-argument 는 생략가능-partition by  는 그룹을 나누기위한 기준-order by 는 정렬 할 컬럼 기준을 적어줌 -RANK-특정 기준으로 순위를 매겨주는 기능[실습] 음식 타입별로 주문 건수가 가장 많은 상점 3개씩 조회하기-SUM-합계를 구하는 기능[실습] 각 음식점의 주문건이 해당 음식 타입에서 차지하는 비율을 구하고, 주문건이 낮은 순으로 정렬했을 때 누적 합 구하기날짜 포맷과 조건까지 SQL로 한 번에 끝내기[실습] 날짜 데이터의 여러 포맷select date(date) ..
20240605 TIL조회한 데이터에 아무 값이 없다면 어떻게 처리하는가 1. 없는 값을 제외해주기-MYSQL 에서는 사용할 수 없는 값일때 연산에서 제외 >> 0으로 간주2. 다른 값을 대신 사용하기다른 값이 있을 때 조건문 이용하기 : if(rating>=1, rating, 대체값)null 값일 때 : coalesce(age, 대체값)조회한 데이터가 상식적이지 않은 값을 가지고 있다면-조건문으로 값의 범위를 지정하기조건문으로 가장 큰 값, 가장 작은 값의 범위를 지정해 줄 수 있음SQL로 Pivot Table 만들어보기-업무를 효율적으로 하기위해! [실습1] 음식점별 시간별 주문건수 피벗 테이블 뷰 만들기-15~20시 사이, 20시 주문건수 기준 내림차순1. 먼저 음식점별, 시간별 주문건수 집계하기2..
20240604 TIL여러 번의 연산을 한번에 하기Subquery-기본구조[실습] user segmentation 와 조건별 수수료를 subquery로 결합해보기-음식점의 평균 단가별 segmentation 을 진행하고, 그룹에 따라 수수료 연산하기(수수료 구간)~5000원 미만 0.05%~20000원 미만 1%~30000원 미만 2%30000원 초과 3%[실습] 복잡한 연산음식 타입별 총 주문수량과 음식점 수를 연산하고, 주문수량과 음식점수 별 수수료율을 산정하기 음식점수 5개 이상, 주문수 30개 이상 → 수수료 0.05% 음식점수 5개 이상, 주문수 30개 미만 → 수수료 0.08% 음식점수 5개 미만, 주문수 30개 이상 → 수수료 1% 음식점수 5개 미만, 주문수 30개 미만 → 수수로 2%)필..
SQL 3주차 @업무 필요한 문자 포맷이 다를 때-특정 문자를 다른 문자로 바꾸기replace(바꿀 컬럼, 현재 값, 바꿀 값)[실습1] 식당 명의 'Blue Ribbon'을 'Pink Ribbon'으로 바꾸기[실습2] 주소의 '문곡리' 를 '문가리' 로 바꾸기 -원하는 문자만 남기기substr(조회 할 컬럼, 시작 위치, 글자 수)[실습] 서울 음식점들의 주소를 전체가 아닌 '시도'만 나오도록 수정-여러 컬럼이 문자를 합치기concat(붙이고 싶은 값1, 붙이고 싶은 값2, 붙이고 싶은 값3, .....)[실습] 서울시에 있는 음식점은 '[서울] 음식점명' 이라고 수정 @문자 데이터를 바꾸고 group by 사용하기[실습1] 서울 지역의 음식 타입별 평균 음식 주문금액 구하기 (출력: '서울', '타입..
20240601 TIL1.한번에 계산하기합계 : SUM평균 : AVG데이터 개수 : COUNT **컬럼명 대신 1 또는 * 사용 가능 >> 전체를 뜻하는 말몇개의 값을 가지고 있는지 구할 때 : DISTINCT최솟값 : MIN최댓값 : MAX[실습1] 주문 금액이 30,000원 이상인 주문건의 갯수 구하기[실습2] 한국 음식의 주문 당 평균 음식가격 구하기2.GROUP BY로 범주별 연산 한 번에 끝내기where 절을 사용해서 수십개의 쿼리를 작성하는 것은 너무 비효율적여러 번의 쿼리 없이, 카테고리를 지정하여 수식 함수로 연산 가능기본 구조:select  카테고리컬럼(원하는컬럼 아무거나),            sum(계산 컬럼),fromgroup by 카테고리컬럼(원하는컬럼 아무거나) [실습1] 음식점..
240531 TIL 1.데이터베이스= 데이터가 저장되어있는 큰 폴더 테이블은 엑셀파일 처럼 생김각 열을 컬럼 또는 필드-SQL의 기본 명령어SELECT , FROM가장 기본적인 문법모든 SQL에는 SELECT, FROM문이 반드시 들어옴 SELECT- 데이터를 가져오는 기본 명령어FROM- 데이터를 가져올 테이블을 특정*-모든 컬럼을 가져와준다는 의미로 SELECT 옆에 들어오게 됨 -실행방법select *from food_orders -필요한 항목만 뽑아서 사용하기* 대신에 필요한 컬럼을 셀렉 옆에 적어줌select 컬럼1, 컬럼2from 테이블 -컬럼에 별명을 주는 법방법1 : 컬럼1 as 별명1방법2 : 컬럼2 별명2 **유의사항**영문, 언더바 - 별명만 적음특수문자, 한글 - "별명"으로, 큰 ..
·아티클스터디
-핵심내용넷플릭스가 콘텐츠 제목을 쓰지 않는 이유는 사용자에게 익숙한 경험을 전달하는 방식우리의 경험은 대부분 온라인이 없던 시절로부터 거슬러 올라가 오프라인에서부터 시작됐고, 그 경험의 바탕으로 온라인에서의 경험으로 자연스럽게 연결이 되어 익숙하게 받아들임.경험의 활용은 쉬운 인식의 방식이기 때문에 넷플릭스 또한 영화관과 같은 경험을 제공하기 위해 콘텐츠의 제목을 극장과 같은 포스터로 대체하고 썸네일 하단에 폰트로 추가 표시하지 않는 방식을 선택하였다.즉, 경험에 의한 설계로 썸네일과 썸네일 하단에 중복으로 콘텐츠의 제목을 표기하면 시선을 분산시키는 요소로 작용되므로 콘텐츠 제목을 삭제 -알게 된 개념1. UX(User experience) - 자신이 실제로 경험한 인지 능력을 통해 보거나 듣거나 느끼..
임빵빵
mj.space