묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결다양한 사례로 익히는 SQL 데이터 분석
집계 함수 order by
with temp_01as (select d.category_name,to_char(date_trunc('month', a.order_date), 'yyyymm') as month_day,sum(amount) as sum_amount,count(distinct a.order_id) as monthly_ord_cntfrom orders ajoin order_items b on a.order_id = b.order_idjoin products c on b.product_id = c.product_idjoin categories d on c.category_id = d.category_idgroup by d.category_name, to_char(date_trunc('month', a.order_date), 'yyyymm'))select *,sum(sum_amount) over (partition by month_day order by month_day) as temp1,sum(sum_amount) over (partition by month_day) as temp2,sum_amount / sum(sum_amount) over (partition by month_day) as ratiofrom temp_01집계 어날리틱 함수는 order by를 사용하면 파티션 내에서 누적합이 되는것으로 알고 있었는데 왜 이렇게 나올까요...? 제가 혹시 놓친게 있는 걸까요
-
미해결다양한 사례로 익히는 SQL 데이터 분석
date_trunc 사용 이유
order_date 컬럼에 대해 쿼리를 할 때 date_trunc('day', order_date)::date; 로 사용하셨는데 date는 YYYY-MM-DD 형태인데 date_trunc()를 굳이 사용할 필요가 있나요?
-
미해결데이터 분석 SQL Fundamentals
Dbeaver 실행시 꼭 Postgres 실행이 된 상태여야하나요?
안녕하세요! Dbeaver 실행시 꼭 Postgres 실행이 된 상태여야 하는지 궁금합니다..! 왠지 컴퓨터가 느려지는 것 같아서요ㅠㅠ
-
미해결비전공자의 전공자 따라잡기 - 데이터베이스,SQL
[섹션3] 사원 테이블 데이터 추가하실 분들을 위한 쿼리문
INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('제로초', 'zerocho@gmail.com', '10000', '개발팀', '1');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('원초', 'onecho@gmail.com', '6000', '디자인팀', '1');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('투초', 'twocho@gmail.com', '8000', '기획팀', '1');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('쓰리초', 'threecho@gmail.com', '7000', '기획팀', '2');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('포초', 'fourcho@gmail.com', '9000', '개발팀', '2');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('파이브초', 'fivecho@gmail.com', '6000', '기획팀', '3');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('식스초', 'sixcho@gmail.com', '6000', '개발팀', '3');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('세븐초', 'sevencho@gmail.com', '5000', '개발팀', '4');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('에잇초', 'eightcho@gmail.com', '4000', '디자인팀', '4');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('나인초', 'ninecho@gmail.com', '3000', '개발팀', '4');INSERT INTO zerocho.`employee` (`name`, email, salary, team, role_id) VALUES ('텐초', 'tencho@gmail.com', '2500', '기획팀', '5');
-
미해결데이터 분석 SQL Fundamentals
nw.orders 테이블의 값들이 비어있어요ㅠ
안녕하세요! 이제 막 강의를 시작하였습니다. 다름이 아니라 실습자료 다운 받고 강의대로 nw.orders 테이블 확인하고 있는데 값이 뜨지 않습니다ㅠㅠ 왜 이럴까요
-
미해결비전공자의 전공자 따라잡기 - 데이터베이스,SQL
users 테이블과 workspace 테이블의 관계
users와 workspace 테이블이 다대다 관계라고 하셨는데 화면에는 일대다 관계로 보이는데요. 혹시 제가 잘못 이하고 있는걸까요? 추가로 테이블 관계 판단하는법 알려주시면 감사하겠습니다.
-
해결됨mongoDB 기초부터 실무까지(feat. Node.js)
몽고 db를 백업방법을 부탁합니다.
mongodump로 로컬에 설치된 몽고 db를 백업하려 하는데 아래의 오류가 나옵니다.해결방법을 부탁합니다.- (mongodump.exe)를 별도로 다운받아야 하나요?-최신버전에는 mongodump.exe파일이 설치되어 있지 않습니다.[오류메세지]'mongodump'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는배치 파일이 아닙니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
데이터 베이스가 만들어지지 않을 때
강의 따라해도 생성이 안되서 골머리를 앓았는데 -- This script does not create a database. -- Run this script in the database you want the objects to be created. -- Default schema is dbo. 이렇게 적혀있더라고요. 이제 테이블을 자동으로 생성해주지 않아요 테이블 만들고 코드 복붙하면 데이터가 생깁니다.그럼 이만
-
해결됨윤재성의 Oracle SQL Database 11g PL/SQL Developer
기본 학습 테이블
기본 학습테이블인 BONUS, DEPT, EMP, SALGRADE 가 요즘 쓰는 SQL Developer 버전에는 없네요.. 그래서 테이블 코드 복사해서 입력하면자꾸 지정한 월이 부적합합니다. 오류가 뜨는데 해결을 못하고있어서 강의를 못듣고 있습니다 ..ㅠㅠ 해결방법좀 알려주세요.
-
미해결다양한 사례로 익히는 SQL 데이터 분석
실습자료 복원
안녕하세요. 윈도우 11 사용하고 있습니다. 실습 자료를 복원하는데 아래와 같은 문구가 나오면서 안 됩니다 .. 해결방법이 있을까요 ? unrecognized win32 error code: 123pg_restore: error: could not open input file "C:\Users\DS\Documents\???\????_?????_????\data_schema.backup": Invalid argument
-
미해결데이터 분석 SQL Fundamentals
Order by 1, 2, 3
안녕하세요. 덕분에 좋은강의 잘 듣고 있습니다.조인실습1에서 해당 내용 궁금하여 질문드립니다! select절에 다른 컬럼들도 있는데 1,2,3만 지정이 된건 그 컬럼들만 순서를 정하기 위함인가요? 그럼 나머지 컬럼들은 알아서 순서대로 출력된다고 보면 될까요? order by 1,2,3 맨 마지막에 c.fromdate가 들어간 이유는 fromdate 컬럼 기준으로 정렬을 해주기 위함일까요?
-
미해결데이터 분석 SQL Fundamentals
having 절 별명 사용
섹션 4. Group by 실습 01 강의 중select deptno, max(sal) as max_sal, min(sal) as min_sal, round(avg(sal), 2) as avg_salfrom hr.empgroup by deptnohaving avg >= 2000;코드에 대한 질문이 있습니다.막줄에서 avg >= 2000 대신 alias인 avg_sal >=2000 로 적으면 오류가 나는ㄷ 이처럼 having절에서는 별명으로 적으면 인식을 못하는 게 일반적인가요? 감사합니다.
-
미해결데이터 분석 SQL Fundamentals
Outer join 질문
안녕하세요, 강의 잘 듣던 중 궁금한 점이 생겨 질문 남깁니다.Outer join 실습 - 02에서-- orders_items에 주문번호(order_id)가 없는 order_id를 가진 orders 데이터 찾기select *from nw.orders aleft join nw.order_items b on a.order_id = b.order_id;where b.order_id is null; 여기서 만약 결과값이 있는 데이터였다고 가정할때is null이 쓰인 where 절에서 a.order_id로 쓰면 원하는 결과값이 나오지 않는 게 맞나요?
-
미해결데이터 분석 SQL Fundamentals
where절 단일 연산자
select *from nw.orders awhere a.order_date = (select min(order_date) from nw.orders x where x.customer_id = a.customer_id);이 쿼리가 실행되는 이유는 서브쿼리로 전달되는 메인쿼리의 레코드에 대한 결과가 한 건만 나와서 가능한게 맞나요?
-
미해결[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
강의안 그림 안보여요!
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.mysql_basic 강의안 노트북에서 https://www.fun-coding.org/00_Images 여기서 가져오는 이미지들이 다 안보이는데 저만 그런걸까요..?
-
해결됨mongoDB 기초부터 실무까지(feat. Node.js)
인덱스 생성시점
선생님, 안녕하세요! 좋은 강의 정말로 감사드립니다!이번 강의를 보면서, 궁금한 게 생겼는데요.이번강의에서 인덱스를 생성하면서, 탐색속도가 훨씬 빨라진다는 걸 알게되었습니다. 기존에 생성되어있는 (인덱스가 걸려있지 않은)데이터들에도 인덱스를 걸어주면 더 빨라지는 걸로 보이는데요. 그런데, 이번 강의에서 인덱스를 걸고 데이터를 생성하면, 인덱스를 걸지않았을 때보다 생성시간이 오래걸리는 부분이 있었습니다. 그렇다면 기존에 인덱스가 걸려있지않은 데이터들에 새로 인덱스를 걸 때는 기존 데이터들에 인덱스를 새로 걸어주는 건가요?
-
해결됨데이터 분석 SQL Fundamentals
그룹핑 후 상태?
-- max, min 함수는 숫자열 뿐만 아니라, 문자열,날짜/시간 타입에도 적용가능.select deptno, max(job), min(ename), max(hiredate), min(hiredate) --, sum(ename) --, avg(ename)from hr.empgroup by deptno;deptno 컬럼으로 그룹핑한 후 max(job)을 해서 나오는 컬럼값은 그룹에서 어떤 기준으로 나오는 건가요?
-
해결됨mongoDB 기초부터 실무까지(feat. Node.js)
$pull 문법에 대한 질문
선생님, 안녕하세요. 좋은 강의 너무 감사드립니다. 답변도 잘해주셔서 너무 감사드려요!이번 강의를 들으면서,Blog.updateMany( { "comments.user": userId }, { $pull: { comments: { user: userId } } } )이 구문이 나왔는데요. 여기서 updateMany의 첫번째 변수인{ "comments.user": userId },는 comments배열의 user가 userId인 객체를 찾는거고,{ $pull: { comments: { user: userId } } }여기서도 comments배열안의 user가 userId인 객체를 찾는 거라서, 사실상 같은거를 두번 써준 게 아닌가요??그래서 const [user] = await Promise.all([ User.findOneAndDelete({ _id: userId }), Blog.deleteMany({ "user._id": userId }), Blog.updateMany( { "comments.user": userId } // { $pull: { comments: { user: userId } } } ), Comment.deleteMany({ user: userId }), ]);이런식으로 updateMany의 두번째 변수만 Blog.updateMany( { "comments.user": userId } // { $pull: { comments: { user: userId } } } ),이런식으로 주석처리를 해줬습니다. 그러자 { "err": "Cast to ObjectId failed for value \"2023-07-03T10:17:04.313Z\" (type Date) at path \"user\" because of \"BSONError\"" }이런 에러가 나왔어요. 그래서 확인해보니, User.findOneAndDelete({ _id: userId }), Blog.deleteMany({ "user._id": userId }), Comment.deleteMany({ user: userId }),updateMany말고 다른 구문들은 다 실행이 됬더라구요. 그래서 user도 삭제되고 블로그도 삭제되고, comment도 삭제되었지만 blog안의 user가 작성한 comment는 pull되지 않아서 그대로 남아있었습니다. 그런데 여기서 궁금한게, promise.all로 묶어서 같이 실행하면, 하나라도 에러가 나면 바로 실행을 중단하고 에러를 배출한다고 배운 것 같은데, Blog.updateMany의 아래 구문인, Comment.deleteMany가 실행됬더라구요. 트랜잭션까지는 아니더라도 updateMany에서 에러가 나면 Comment.deleteMany는 실행이 안될 줄 알았는데, 이거까지 실행된 거를 보면, Promise.all에서는 전부 순서없이 비동기로 동시에?실행되는 걸까요?
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
강의 연장이 가능한지 궁금합니다.
안녕하세요.강의 연장이 가능한지 궁금하여 질문 남깁니다.중간에 현재 수강하는 기기로 동영상 재생이 안되는 이슈와 더불어 개인 사정으로 인해 수강을 마치지 못하였습니다.ㅠㅠ "SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법"을 수강중이며, 혹시 강의 연장을 해주실 수 있는지 궁금합니다.번거롭게 해드려서 죄송합니다.감사합니다.
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
죄송하지만 강의 연장 가능할까요?
안녕하세요좋은 강의 만들어주셔서 감사합니다.최근 개인 사정으로 인해 바쁘게 지내다 보니 강의 종료일이 금방 도래하게 되었습니다.급하게 듣다 보니 놓치는 부분이 많은 거 같아혹시 강의 연장이 가능하다면 연장 부탁드리겠습니다.감사합니다.