전체 글 119

[SQL] 다른 테이블 합치기 JOIN

JOIN이 필요한 경우필요한 데이터가 서로 다른 테이블에 있을 때예) 주문 가격은 주문테이블에 있지만, 어떤 수단으로 결제를 했는지는 결제테이블에 있어요 JOIN의 기본 원리와 종류기본적으로 엑셀의 Vlookup과 유사하다.두 테이블이 공통으로 갖고 있는 컬럼을 찾는 것이 중요.합치는 방식에 따른 종류는 두가지가 있다.LEFT JOIN공통 컬럼을 기준으로 하나의 테이블에 값이 없더라도 모두 조회.예) A테이블 : {1,2,3} / B테이블 : {2,3,4} 의 데이터가 있을 때LEFT JOIN을 사용하면 A + (B와A의 공통된 값) 인 {1,2,3}이 나온다.INNER JOIN공통 컬럼을 기준으로, 두 테이블 모두에 있는 값만 조회한다. A와 B의 교집합.예) A테이블 : {1,2,3} / B테이블 :..

[SQL]Subquery로 여러 번의 연산을 한 번에

Subquery란?내부 쿼리의 결과를 기반으로 데이터를 필터링, 검색 또는 조작하는 데 자주 사용되는 다른 쿼리 내에 포함된 쿼리입니다.출처: https://easyitwanner.tistory.com/274 [IT 시작해보기:티스토리] Subquery가 필요한 경우여러번의 연산을 수행해야 할 때예) 수수료를 부과할 수 있는 시간을 구하고 → 구해진 시간에 주문 금액별로 가중치를 주고 → 가중치를 적용한 결과로 최종 예상 배달비를 계산할 때조건문에 연산 결과를 사용해야 할 때예) 음식 타입별 평균 음식 주문금액 따라 음식비 상/중/하 를 나누고 싶을 때조건에 Query 결과를 사용하고 싶을 때예) 30대 이상이 주문한 결과만 조회하고 싶을 때 Subquery문의 기본 구조select column1, sp..

[TIL]숫자 계산이나 문자 가공 시 자주 발생하는 오류, 사전캠프과제7

[문제점] avg, substring 등 함수를 썼더니 에러메세지에 ‘data type’ 단어가 뜨면서 실행되지 않아요우리가 실습하는 Mysql 과 다르게, 다른 SQL 문법에서는 data type 이 다를 때 연산이 되지 않을 수 있다.컬럼에 숫자 혹은 문자가 섞여서 저장되어 있는 경우 데이터 타입을 변경해야 한다.--숫자로 변경cast(if(rating='Not given', '1', rating) as decimal) --문자로 변경concat(restaurant_name, '-', cast(order_id as char)) 아래와 같은 lol_feedbacks (LOL 피드백 테이블)이 있습니다.iduser_namesatisfaction_scorefeedback_date1르탄이52023-03-01..

[SQL]3주차_IF, CASE (조건에 따라 포맷을 다르게 지정하기)

조건에 따라 다른 방법을 적용하고 싶을 때 - If 문기본 구조if(조건, 조건을 충족할 때, 조건을 충족하지 못할 때) [실습1] 음식 타입을 ‘Korean’ 일 때는 ‘한식’, ‘Korean’ 이 아닌 경우에는 ‘기타’ 라고 지정select restaurant_name, cuisine_type "원래 음식 타입", if(cuisine_type='Korean', '한식', '기타') "음식 타입"from food_orders [실습2] 02. 번 실습에서 ‘문곡리’ 가 평택에만 해당될 때, 평택 ‘문곡리’ 만 ‘문가리’ 로 수정select addr "원래 주소", if(addr like '%평택군%', replace(addr, '문곡리', '문가리'), addr) "바뀐..

[SQL]3주차_Query 결과를 바로 사용할 수 없는 경우(REPLACE, SUBSTRING, CONCAT)

REPLACE : 데이터 값을 바꾸고 싶을 때기본 구조replace(바꿀 컬럼, 현재 값, 바꿀 값)  예시1) 최근에 상점 이름이 바뀌었지만 과거 데이터에는 옛날 이름으로 저장되어있어요select restaurant_name "원래 상점명", replace(restaurant_name, 'Blue', 'Pink') "바뀐 상점명"from food_orderswhere restaurant_name like '%Blue Ribbon%' -- 제대로 바뀌었는지 확인하기 위해서 blue ribbon이 들어가 있는 데이터만 추출/* 원래 상점명 컬럼에 들어가 있는 'Blue'를 모두 'Pink'로 변경 예시2) 예전에 ‘문곡리’ 라는 지명이 ‘문가리’ 로 바뀌었어요SELECT addr,REPLACE(..

[SQL]사전캠프과제6

6. 아래와 같은 lol_users(LOL 유저 테이블)이 있습니다.idnameregionratingjoin_date1르탄이한국13002019-06-152배캠이미국15002020-09-013구구이한국14002021-01-074이션이미국13502019-11-151. lol_users 테이블에서 각 유저의 레이팅(rating) 순위를 계산하는 쿼리를 작성해주세요! 전체 지역(region) 기준이고 순위는 레이팅이 높을수록 높아야해요. (e.g. rating 1400 유저의 순위 > rating 1350 유저의 순위SELECT *, RANK() OVER (PARTITION BY region ORDER BY rating DESC) AS rankFROM lol_usersORDER BY rank; 2. lol..

[SQL]2주차_Distinct, Group by, Order by

스파르타 SQL 강의 2주차DISTINCT (뚜렷이 다른[구별되는], 별개의) : 중복 값을 제거select count(1) count_of_orders, count(distinct customer_id) count_of_customersfrom food_orders/* count(1),count(*)은 전체의 개수를 구하라는 뜻. GROUP BY : 범주별 연산하기select 카테고리컬럼(원하는컬럼 아무거나), sum(계산 컬럼),fromgroup by 카테고리컬럼(원하는컬럼 아무거나) [실습1] 음식점별 주문 금액 최댓값 조회하기select restaurant_name, MAX(price) max_price from food_ordersGROUP BY restaurant..

[TIL]20241108

[아티클스터디]2024.11.08 - [아티클스터디] - [아티클스터디]SQL 질문 잘 하는 방법 [아티클스터디]SQL 질문 잘 하는 방법2024.11.08원문: https://stackoverflow.com/ Stack Overflow - Where Developers Learn, Share, & Build CareersStack Overflow | The World’s Largest Online Community for Developersstackoverflow.com[주제]SQL 질문 잘 하는 방법[아티클 요약]질문dydatablog.tistory.com2024.11.08 - [아티클스터디] - [아티클스터디]마케터에게 데이터분석이란? 꼭 필요할까? [아티클스터디]마케터에게 데이터분석이란? 꼭 필요..

카테고리 없음 2024.11.08

[SQL]사전캠프과제_4,5

아래와 같은 sparta_students(학생) 테이블이 있습니다.idnametrackgradeenrollment_year1르탄이Node.jsA20232배캠이SpringB20223구구이UnityC20214이션이Node.jsB2022sparta_students 테이블에서 모든 학생의 이름(name)과 트랙(track)을 선택하는 쿼리를 작성해주세요!SELECT name, trackFROM sparta_students; sparta_students 테이블에서 Unity 트랙 소속이 아닌 학생들을 선택하는 쿼리를 작성해주세요!SELECT *FROM sparta_studentsWHERE track != 'Unity'; sparta_students 테이블에서 입학년도(enrollment_year)가 2021년인 ..

[아티클스터디]마케터에게 데이터분석이란? 꼭 필요할까?

2024/11/08원문:https://brunch.co.kr/@shimseenote/5  마케터에게 데이터분석이란? 꼭 필요할까?마케터에게 요구되는 데이터분석 능력 | 최근 마케터로 취직 또는 이직을 준비하고 있는 분들과 이야기를 나눌 기회가 몇 번 있었습니다. 이야기를 듣다보니 공통적인 질문이 있더라구요. 데이brunch.co.kr[주제]마케터에게 데이터분석이란? 꼭 필요할까?[아티클 요약]데이터분석 능력, 왜 필요할까?방법론 : 부트캠프, 유튜브… But, 왜 필요한지, 어떻게 활용되는지 알고 방향성을 잡는 것이 중요!데이터를 분석해서 얻은 인사이트를 통해 더 나은 의사결정을 하기 위해서마케터에게 ‘데이터 분석’데이터를 통해 가설을 세우고 검증하는 ‘기획력’그로스 마케터 : 고객의 행동 데이터를 바탕..