55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결데이터 분석 SQL Fundamentals
JOIN 실습 예제 SQL 관련 질문입니다.
안녕하세요.JOIN 실습 예제 SQL 중에-- 부서명 SALES와 RESEARCH의 소속 직원들의 부서명, 직원번호, 직원명, JOB 그리고 과거 급여 정보중 1983년 이전 데이터는 무시하고 데이터 추출의 경우에 MARTIN 이 FROMDATE 가 1982년 이라서 조회가 안되는 것 같은데 현 직원이라서 조회는 되게 하구 싶으면 어떻게 하면 될까요 ?
- 미해결데이터 분석 SQL Fundamentals
설치하는데 오류가떠서 11버전으로 설치했는데 수업듣는것에는 지장은 없을까요?
이런 오류가떠서 도저히 해결이 안되서 11버전으로 설치했는데 수업듣는것은 문제가없을까요?
- 미해결데이터 분석 SQL Fundamentals
쿼리 오류
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.표시된 부분 어느 부분이 틀렸는지 모르겠습니다... ㅠㅠ 도와주세요
- 미해결데이터 분석 SQL Fundamentals
max() over (partition by)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.왜 틀렸는지 모르겠습니다... 말씀 부탁드릴게요
- 미해결데이터 분석 SQL Fundamentals
DBeaver에 Postgresql 연결이 안 돼요.
Postgresql이랑 DBeaver 설치해서 연결하려고 하는데, 캡쳐와 같이 connetion이 거절되어 db 로드도 안 되고 아무런 작업을 할 수가 없습니다.주말 동안에 수업 듣고 작업해보려고 했는데 안 되네요. 어떻게 하면 될까요?빠른 답변 부탁드려요.
- 미해결데이터 분석 SQL Fundamentals
row_number
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.상품별 매출 랭킹(카테고리별)이 내림차순으로 나와야 하는데 왜 매출 수치랑 랭킹이 맞지 않을까요.. 대체 어디가 틀린 걸까요ㅠㅠwith c as (select b.category_id, a.product_id, sum(a.amount) sum_amt from order_items a join products b on a.product_id = b.product_id group by a.product_id, b.category_id order by b.category_id, a.product_id )select category_id, product_id, sum_amt, sum(sum_amt) over (partition by category_id) sum_category,row_number() over(partition by category_id order by sum_amt desc) as rank_sumfrom c group by category_id, product_id, sum_amt
- 미해결데이터 분석 SQL Fundamentals
실행 순서 관련
-- 직원별 개별 상품 매출액, 직원별 가장 높은 상품 매출액을 구하고, 직원별로 가장 높은 매출을 올리는 상품의 매출 금액 대비 개별 상품 매출 비율 구하기 with temp_01 as ( select b.employee_id, a.product_id, sum(amount) as sum_by_emp_prod from order_items a join orders b on a.order_id = b.order_id group by b.employee_id, a.product_id)select employee_id, product_id, sum_by_emp_prod , max(sum_by_emp_prod) over (partition by employee_id) as sum_by_emp , sum_by_emp_prod/max(sum_by_emp_prod) over (partition by employee_id) as sum_ratiofrom temp_01order by 1, 5 desc; 위 쿼리의 실행 순서를 살펴 보았는데 맞는지 조언 얻고 싶습니다.order_items a와 orders b를 order_id로 join1의 결과를 employee_id로 group byselect b.employee_id, a.product_id select하여 temp_01 완성temp_01에서 employee_id, product_id, sum_by_emp_prod, sum_by_emp, sum_ratio를 select1, 5요인으로 desc 하여 order by 또 sum_ratio를 select 할 때 sum_by_emp를 사용하지 않고 max(sum_by_emp_prod) over (partition by employee_id)를 그대로 쓰는 이유가 궁금합니다
- 미해결데이터 분석 SQL Fundamentals
순서 관련
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님! 책을 추천받고 싶은데적당한 책이 있을지 모르겠네요..기본 개념은 아는데 실행 순서라던지 좀 더 세세한내용을 공부할 수 있어서 이거 하나만 가지고 있어도기본 베이스는 탄탄하게 갈 수 있다고 말할 수 있는 책이 있을까요? 추천 부탁드립니다
- 미해결데이터 분석 SQL Fundamentals
집계함수 사고과정
부서별 평균 급여와 개인 급여와의 차이 출력-- analytic을 사용하지 않고 위와 동일한 결과 출력위 문제의 풀이 사고과정을 다음과 같이 생각해봤는데틀린 부분이 있다면 말씀 부탁드립니다emp 테이블에서 부서별 평균급여가 없다부서별 평균급여를 만들어야 하는데 analytic을 사용하지 않으므로 테이블을 따로 만들어 붙인다질문이 하나 더 있는데 analytic을 사용하지 않는다고 했는데 avg가 analytic 아닌가요? 조금 헷갈려서 여쭤봅니다.
- 미해결데이터 분석 SQL Fundamentals
집계함수
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. --직원 정보 및 부서별 평균 급여와 개인 급여와의 차이 출력select empno, ename, deptno , sal - avg(sal) over (partition by deptno) avg_sal from emp ; 이 구문은 왜 틀렸을까요?
- 미해결데이터 분석 SQL Fundamentals
상관서브쿼리와 Exists의 이해 -02의 left outer join관련
안녕하세요, 강사님서브쿼리 강의 듣다 궁금한 사항이 있어 질문드립니다.--------------------------------------------------------문제:1997년 이후에 단 한건도 주문하지 않은 고객정보를 조인으로 변환select *from nw.customers aleft join (select customer_id from nw.orderswhere order_date >= to_date('19970101', 'yyyymmdd') group by customer_id) bon a.customer_id = b.customer_idwhere b.customer_id is null;--------------------------------------------------------여기서, b의 테이블이 1997년 이후로 구매한 사람들의 데이터만 담겨있을 것이고, a의 테이블이 전체 customer_id에 대해 담겨 있을 텐데,따라서 a.customer_id is null로 작성하는게 아닌지요..? 너무 헷갈립니다 ㅜㅜ
- 미해결데이터 분석 SQL Fundamentals
CASE WHEN 관련 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님 좋은 강의 항상 감사합니다. 보통의 ecommerce 테이블인데요판매자정보 테이블(=A): 기준1인 집합상품정보테이블(=B): 기준1인 집합상품카테고리정보 테이블(=C): 기준 M주문정보테이블(=D): 기준M인 집합의 테이블로 조인하면이런테이블이 나오고,이 데이터에서 이러한 데이터 추출하고 싶은데, DB버전문제(MYSQL 5.7버전) 로 Analytic SQL을 사용하지 못한다고 했을 때,제가 알고 있는 지식으로는,SELECT A. 판매자이름 as '판매자', SUM( B.상품가격+ B.배송비) AS '총판매금액' ,SUM(case when c.카테고리네임 LIKE '%식품%' then SUM( B.상품가격+ B.배송비 ?? end)) as '식품판매'SUM(case when c.카테고리네임 LIKE '%패션%' then SUM( B.상품가격+ B.배송비 ?? end)) as '패션판매'SUM(case when c.카테고리네임 LIKE '%패션%' then SUM( B.상품가격+ B.배송비 ?? end)) as '기타판매'FROM AJOIN B on A.a=B.bJOIN C on C.c=B.b2JOIN D on D.d =B.b3GROUP BY A.판매자이름이렇게 생각했는데, 실행해보니 안되는것같더라구요.단순하게 판매상품이 식품카테고리 상품이면 식품카테고리 상품끼리더하고, 판매상품이 패션카테고리 상품이면 패션카테고리 상품끼리 더하는걸로 정말 단순하게 생각했는데 안되더라구요.그래서 궁금한게(1) SELECT에 쓴 SUM( B.상품가격+ B.배송비) AS '총판매금액' 을 바로 SUM(case when c.카테고리네임 LIKE '%식품%' then SUM( B.상품가격+ B.배송비 ?? end)) as '식품판매' 처럼 활용할 수 없어서 안되는건지(2) SUM(case when c.카테고리네임 LIKE '%식품%' then SUM( B.상품가격+ B.배송비 ?? end)) as '식품판매'에서 end 앞 ?? 에 다른 내용이 더 들어가야하는건지,(3) 아니면 접근자체가 잘못된건지 궁금합니다.
- 미해결데이터 분석 SQL Fundamentals
Outer join실습 02 관련
안녕하세요. 강사님조인 실습 중에 질문이 생겨서 이렇게 문의드립니다. 다음 실습을 하던 도중 레프트 조인에서 b.ship_via = d.shipper_id 와 같이 서로 필드명이 다른데어떻게 이 둘이 서로 같다 라고 알 수 있나요?ERD를 보면 orders 테이블에는 ship_via, freight 모두 123표시가 있기는 합니다만.... 궁금합니다 null 값을 0으로 만들때coalesce (. ) 함수 말고 ifnull 함수로는 사용할 수가 없는지 궁금합니다. 감사합니다. 강사님.!
- 미해결데이터 분석 SQL Fundamentals
Left join 관련
교수님 안녕하세요. 항상 감사드립니다. 질문!Left join 시에 어떤 테이블을 outer로 잡아야 하는지 좀 헷갈립니다. 1)보통 1레벨 테이블과 과 M레벨 테이블이 있으면 1레벨 테이블을 outer로 잡는 게 맞는거지요? 그 이유는 dept 테이블에 있는 deptno는 PK이기에 가지고 있는 모든 값을 가져오는 반면,emp 테이블의 deptno는 중복은 될지라도 직원의 정보가 있는 한정된 값들만 가지고 오기 때문인가요?그래서 null값을 보려면 outer를 dept로 설정해야 하는 것인지요? 감사합니다.
- 미해결데이터 분석 SQL Fundamentals
구문 정리
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. with a as (select emp.*, row_number () over (partition by deptno order by sal desc) as high_sal , row_number () over (partition by deptno order by sal) as low_salfrom emp),b as (select *from a where high_sal = 1 or low_sal = 1),c as (select distinct a.*, case when a.high_sal=1 then '최고' when a.low_sal =1 then '최저' end as 급여수준 from a join b on a.deptno = b.deptnowhere a.high_sal = 1 or a.low_sal =1),d as (select deptno , max(sal) as max_sal, min(sal) as min_salfrom c group by deptno)select c.*, d.max_sal - d.min_salfrom c join d on c.deptno = d.deptnoorder by deptno 이 구문을 좀 더 깔끔하게 정리하고 싶은데 혹시 필요없는 절이라던가 생략 가능한 부분이 있을까요?
- 미해결데이터 분석 SQL Fundamentals
변수 생성 순서
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.변수 생성 관점에서, select 절에서 만든 변수는 해당 테이블에서 처음 생성 되는 것인가요 아니면select 절에서 생성되어 이후 where 등에서 조작이 가능한 것인가요?위의 구문은 왜 틀렸을까요?
- 미해결데이터 분석 SQL Fundamentals
다중 조인시 집합의 레벨
안녕하세요. 강사님좋은 강의 감사드립니다. 1:M 끼리의 레벨이 만나면 그 집합은 M의 레벨을 유지한다는 것은 잘 이해하였습니다.위와 같이 보면 처음에 hr.dept(1레벨) 과 hr.emp(M레벨) 가 만나면 이 조인의 결과는 M레벨을 유지합니다.이 상태에서 추가로 hr_salary_hist(M레벨)을 조인한다면 M : M 레벨의 집합들이 서로 만나는 것인데 왜 hr.emp_salary_hist의 순서? 레벨?을 따르는 것인지 궁금합니다. 또한 이렇게 보면 닭발이 안보이는데 서로 어떤 테이블이 m이고 1 인지 구분할 수 있나요? 감사합니다.!
- 미해결데이터 분석 SQL Fundamentals
rollup
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. with temp_01 as(select to_char(b.order_date, 'yyyy') as year , to_char(b.order_date, 'mm') as month , to_char(b.order_date, 'dd') as day , sum(a.amount) as sum_amountfrom nw.order_items a join nw.orders b on a.order_id = b.order_idgroup by rollup(to_char(b.order_date, 'yyyy'), to_char(b.order_date, 'mm'), to_char(b.order_date, 'dd'))order by 1, 2, 3)select case when year = null then year = '총매출' else year end as year, case when month = null then month ='년 총매출' else month end as month, case when day = null then day = '월 총매출' else day end as day, sum_amountfrom temp_01order by year, month, day ; 이 구문은 어디가 틀렸나요?
- 미해결데이터 분석 SQL Fundamentals
조인 실습 - 02 / to_date 관련
안녕하세요. 권철민 강사님강사님 덕분에 열심히 공부하고 있는 코린이 입니다. 질문 = 조인 실습 -02 / 1:18분 / 1983년 이전 데이터는 무시하고 데이터 추출 합시다.1.여기서 where ~ and c.fromdate >= to_date('19830101','yyyymmdd') 라고 코드를 작성하셨는데제가 알기로는 to_date( ) 함수는 varchar 같이 문자열 타입을 날짜 데이터 타입으로 변화해 주는 함수로 알고 있습니다.그런데 제가 찾아보니 해당 c.fromdate는 이미 date 타입의 컬럼인데 왜 굳이 to_date 함수를 쓰신 것인지 궁금합니다. where c.fromdate like '1983%' 이나where c.fromdate >= 19830101로 하면 에러가 뜨는데 혹시 이유를 알 수 있을지도 문의드립니다. 감사합니다.
- 미해결데이터 분석 SQL Fundamentals
집계함수(문자열) 사용 시, 행의 데이터 불일치 하는 이유
안녕하세요,강사님집계함수와 count(distinct) 실습 강의 듣다가 궁금한점이 있어 문의드립니다. 하기 코드를 실행시킨 후, 나오는 값을 보면 하기 이미지와 같습니다.select deptno, max(job), min(ename), max(hiredate), min(hiredate)from hr.empgroup by deptno;deptno가 10인 부서에서job은 MAX 집계라 알파벳 순서가 가장 늦은 'PRESIDENT'가 나오는데, ename은 MIN이라서 deptono = 10인 부서에서 ename으로 가장 앞 순서인 'CLARK'가 나오더라고요.근데 하기 데이터를 보면, job은 president인 사람의 이름은 KING인데... 이렇게 문자열에 집계함수를 사용하여 조회한 데이터는 행 정보가 일치하지 않는건가요? 즉, 직업정보,이름 정보는 서로 다 일치하지 않고, 개별 컬럼으로 계산되는 건지? 그 이유가 무엇인지 알고 싶습니다.