inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

집계 함수 order by

미해결

다양한 사례로 익히는 SQL 데이터 분석

with temp_01 as ( 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_cnt from orders a join order_items b on a.order_id = b.order_id join products c on b.product_id = c.product_id join categories d on c.category_id = d.category_id group 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 ratio from temp_01 집계 어날리틱 함수는 order by를 사용하면 파티션 내에서 누적합이 되는것으로 알고 있었는데 왜 이렇게 나올까요...? 제가 혹시 놓친게 있는 걸까요

  • sql
  • postgresql
  • dbms/rdbms
  • 퍼포먼스-마케팅
  • 데이터-엔지니어링
정성훈 댓글 1 좋아요 0 조회수 322

date_trunc 사용 이유

미해결

다양한 사례로 익히는 SQL 데이터 분석

order_date 컬럼에 대해 쿼리를 할 때 date_trunc ('day', order_date):: date ; 로 사용하셨는데 date는 YYYY-MM-DD 형태인데 date_trunc()를 굳이 사용할 필요가 있나요?

  • sql
  • postgresql
  • dbms/rdbms
  • 퍼포먼스-마케팅
  • 데이터-엔지니어링
정성훈 댓글 1 좋아요 0 조회수 430

Dbeaver 실행시 꼭 Postgres 실행이 된 상태여야하나요?

미해결

데이터 분석 SQL Fundamentals

안녕하세요! Dbeaver 실행시 꼭 Postgres 실행이 된 상태여야 하는지 궁금합니다..! 왠지 컴퓨터가 느려지는 것 같아서요ㅠㅠ

  • sql
  • postgresql
  • dbms/rdbms
Taylor Shin 댓글 1 좋아요 0 조회수 382

as 2 space-separated values. 무슨 말인가요???

미해결

[백문이불여일타] 데이터 분석을 위한 중급 SQL 문제풀이

-- 파파고 --> hacker_id와 이름을 2개의 공백으로 구분하여 출력합니다. 제 기준에서는 공백이 1개로 보이고 복사 붙여넣기 해서 드레그해도 1개더라고요. 저 조건은 그냥 가볍게 무시해도 되는건가요?? 아니면 제가 잘못 이해한 걸까요??

  • sql
M ` 댓글 1 좋아요 0 조회수 444

코드 에러 이유

미해결

[백문이불여일타] 데이터 분석을 위한 기초 SQL

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. select, from, limit 다 완벽하게 작성한 것 같은데 오류가 나서 질문글 찾아보니 limit 뒤에 세미콜론을 안적어서 그렇다는데 저는 적어도 저렇게 나오는데 이유가 뭘까요?

  • sql
나의개해방일지 댓글 2 좋아요 0 조회수 398

[섹션3] 사원 테이블 데이터 추가하실 분들을 위한 쿼리문

미해결

비전공자의 전공자 따라잡기 - 데이터베이스,SQL

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
  • mysql
  • dbms/rdbms
  • mysql-workbench
다랑어치킨 댓글 1 좋아요 3 조회수 537

nw.orders 테이블의 값들이 비어있어요ㅠ

미해결

데이터 분석 SQL Fundamentals

안녕하세요! 이제 막 강의를 시작하였습니다. 다름이 아니라 실습자료 다운 받고 강의대로 nw.orders 테이블 확인하고 있는데 값이 뜨지 않습니다ㅠㅠ 왜 이럴까요

  • sql
  • postgresql
  • dbms/rdbms
Taylor Shin 댓글 2 좋아요 0 조회수 463

Union 해커랭크. 꼭 풀 수 있어야 하나요?

미해결

[백문이불여일타] 데이터 분석을 위한 중급 SQL

수학적 감각이 없어서 그런지 도통 문제 조차도 이해가 안되고 어떻게 풀어야하는 지 감 조차도 않왔어서 문제 풀이 영상을 보았는데도.... 저는 그냥 외워야하는 문제이더라고요. ㅠㅠ 혹시 데이터 분석가의 기본기의 문제인가요??

  • sql
M ` 댓글 1 좋아요 0 조회수 380

설치 질문

미해결

핵심만 쉽게, 모두의 SQL 데이터 분석

The installer is unable to instantiate the file The file does not appear to exist 설치가 안됩니다. 테스트도 안됩니다

  • sql
  • 퍼포먼스-마케팅
소리없는소리 댓글 1 좋아요 0 조회수 408

users 테이블과 workspace 테이블의 관계

미해결

비전공자의 전공자 따라잡기 - 데이터베이스,SQL

users와 workspace 테이블이 다대다 관계라고 하셨는데 화면에는 일대다 관계로 보이는데요. 혹시 제가 잘못 이하고 있는걸까요? 추가로 테이블 관계 판단하는법 알려주시면 감사하겠습니다.

  • sql
  • mysql
  • dbms/rdbms
  • mysql-workbench
댓글 1 좋아요 0 조회수 463

isEqualTo를 isSameAs로 바꿔야하는것이 아닌가요??

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

@RunWith(SpringRunner.class) @SpringBootTest public class MemberRepositoryTest { @Autowired MemberRepository memberRepository; @Test @Transactional @Rollback(false) public void testMember() throws Exception { //given Member member = new Member(); member.setUsername("memberA"); //when Long saveId = memberRepository.save(member); Member findMember = memberRepository.find(saveId); //then assertThat(findMember.getId()).isEqualTo(member.getId()); assertThat(findMember.getUsername()).isEqualTo(member.getUsername()); assertThat(member).isEqualTo(findMember); System.out.println("findMember == member: " + (findMember == member)); } } 위 코드에서 디비에 넣은 멤버와 찾은 멤버가 같은지를 비교를 isEqualTo를 사용을 하셨는데 이것은 제가 알기론 value부분만 같다면 true라는것으로 알고 있습니다. 같은 영속성 컨텍스트 안에서의 객체가 같은지 확인하려면 isSameAs가 맞지 않은지 의문이 생겼습니다!

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
hello0718 댓글 1 좋아요 0 조회수 340

DB 엔티티와 도메인 분리

해결됨

Java/Spring 주니어 개발자를 위한 오답노트

어디까지 추상화 해야 하는가? 강의에서 2분 17초에 toDomain()으로 바꿔서 반환을 했는데 이렇게하면 JPA 엔티티가 아니라서 변경감지를 사용하지 못하는거 아닌가요? 이러한 방식으로 작성한다면 업데이트가 필요할 때는 어떤식으로 처리하나요?

  • java
  • spring
  • 객체지향
  • 소프트웨어-테스트
yhwjd 댓글 2 좋아요 3 조회수 4732

해커랭크 top earner

미해결

[백문이불여일타] 데이터 분석을 위한 고급 SQL

2가지의 풀이 방법을 알 수 있었습니다 -- 1번 풀이 : 서브쿼리 select salary * months as earnings , count(*) from employee where salary * months = (select max(salary*months) from employee) group by earnings -- 2번 풀이 : order by , limit select salary * months as earnings , count(*) from employee group by earnings order by earnings desc limit 1 궁금한 사항은 두가지 방법 중 어느 코드의 성능이 더 좋게 평가 되는지 궁금합니다.

  • sql
9176choi 댓글 1 좋아요 0 조회수 314

서브쿼리 날짜 공백

미해결

[백문이불여일타] 데이터 분석을 위한 고급 SQL

서브쿼리 이론 설명 강의에서 날짜 공백이 있을 시, 집계가 되지 않아 평균값을 낼 때, 해당 날짜가 포함되지 않을 수 있다고 설명해주셨습니다(서브쿼리 강의 7분 즈음) 이때 어떤 방식으로 해결하는 것이 좋은가요?

  • sql
9176choi 댓글 1 좋아요 1 조회수 324

Weather Observation Station 6 풀이 질문(LIKE OR)

미해결

[백문이불여일타] 데이터 분석을 위한 기초 SQL

해당 문제를 풀 때 다음과 같이 코드를 작성했는데요. SELECT City FROM Station WHERE City LIKE 'a%' or 'e%' or 'i%' or 'o%' or 'u%'; 결과물을 보니까 A로 시작하는 CITY만 출력되더라고요. OR로 연결되는 모든 조건에는 컬럼명과 LIKE를 써줘야 하닌데, 'a%' 뒤에 있는 것들은 그렇지 않아서 결과로 출력되지 않은 건가요? AND도 OR처럼 여러 번 쓰면 뒤에 컬럼명과 LIKE를 또 써줘야 하나요?

  • sql
김혜수 댓글 1 좋아요 0 조회수 275

gradle 사용하시는 분 도움

미해결

더 자바, 코드를 조작하는 다양한 방법

일단 새로운 프로젝트 만들고 premain 추가해주는 것 까진 강의를 그대로 따라하시면 됩니다. manifest plugin 부터 조금 차이가 있어서 거기부터 설명하면, build gradle 에 다음과 같이 추가한다. tasks.named('jar') { manifest { attributes( 'Implementation-Title': project.name, 'Implementation-Version': project.version, 'Premain-Class' : "com.java.magicianAgent.MagicianAgent", 'Can-Redefine-Classes' : true, 'Can-Retransform-Classes' : true) } } 터미널에서 다음 명령어를 통해 build 한다 ./gradlew clean build build.libs file 안에 있는 jar file 을 확인한다. (옵션) 강의에서와 마찬가지로 zip file 로 변경하면 확인가능합니다. 저같은 경우 SNAPSHOT.jar 과 SNAPSHOT -plain.jar 이렇게 2개가 생겼는데 SNAPSHOT.jar 은 제가 spring boot 로 실행서 그런지 관련 설정들이 보이고 SNAPSHOT -plain.jar 이 맞는거 같더라구요. jar file 의 절대 경로를 복사해 VM option 에 추가한다. 여기서부터는 다시 강의와 같습니다. VM option 이 안보이시면 오른쪽에 Modify options 클릭하면 add vm options 라고 보이실 겁니다. 이상한거나 궁금한거 있으시면 말씀해주세요. gradle 을 쓰시는 모든 분들도 마술을 성공시킵시다 하하

  • java
  • spring
안호성 댓글 1 좋아요 4 조회수 788

3-D 질문입니다..

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2일째 고민을 해보았는데.. 2%까지만 맞고 틀리다고 합니당..ㅠㅠ 포기하고 싶지 않은 마음에 도움을 요청합니다!! 제가 짠 코드는 이렇습니다! import java.io.*; import java.util.*; // 불이 하나가 아닌 여러개일 수 있다. public class Main { public static int R; public static int C; public static String[][] map; public static int[][] visitedFire; public static int[][] visitedHuman; public static int[] dx; public static int[] dy; public static Node fireLocation; public static Node humanLocation; public static Queue<Node> fireQueue; public static void main(String[] args) throws IOException { // 초기화 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); StringTokenizer st = new StringTokenizer(br.readLine()); R = Integer.parseInt(st.nextToken()); C = Integer.parseInt(st.nextToken()); map = new String[R][C]; // 0으로 초기화 visitedFire = new int[R][C]; visitedHuman = new int[R][C]; dx = new int[]{0,1,0,-1}; dy = new int[]{-1,0,1,0}; fireQueue = new LinkedList<>(); // 맵 입력 for (int i = 0; i < R; i++) { String S = br.readLine(); for (int j = 0; j < C; j++) { // 불 좌표, 지훈이 좌표 찾기 map[i][j] = String.valueOf(S.charAt(j)); if(map[i][j].equals("J")){ humanLocation = new Node(j,i); map[i][j] = "."; // .으로 변경 }else if(map[i][j].equals("F")){ // 불이 여러개, 불이 아무것도 없을 수 있다. -> 반레 fireLocation = new Node(j,i); fireQueue.add(fireLocation); visitedFire[i][j] = 1; } } } // (1) 불이 이동할 수 있는 최단경로 fireBfs(); // (2) 사람이 이동할 수 있는 최단경로 + 길 비교해야함 humanBfs(humanLocation.y, humanLocation.x); // 가능한 길 찾아서 int result = Integer.MAX_VALUE; // (3) 가장 짧은 최단거리 찾기 (가장자리 찾기) for (int i = 0; i < visitedHuman.length; i++) { for (int j = 0; j < visitedHuman[i].length; j++) { if((0<i && i<R-1) && 0 < j && j < C-1)continue; // 가장자리가 아닌 경우 pass if(visitedHuman[i][j] > 0) { result = Math.min(result, visitedHuman[i][j]); } } } if(result == Integer.MAX_VALUE){ System.out.println("IMPOSSIBLE"); }else{ System.out.println(result); } } public static void humanBfs(int y, int x){ // tkfk visitedHuman[y][x] = 1; Node node = new Node(x,y); Queue<Node> queue = new LinkedList<>(); queue.add(node); while(queue.size()>0){ Node cur = queue.poll(); for (int i = 0; i < 4; i++) { int nx = cur.x + dx[i]; int ny = cur.y + dy[i]; if(nx < 0 || nx >= C || ny < 0 || ny >= R) continue; if(visitedHuman[ny][nx] == 0 && (map[ny][nx].equals("."))){ if(visitedHuman[ny][nx] < visitedFire[ny][nx] || visitedFire[ny][nx] == 0){ visitedHuman[ny][nx] = visitedHuman[cur.y][cur.x] + 1; Node next = new Node(nx,ny); queue.add(next); } } } } } public static void fireBfs(){ while(fireQueue.size()>0){ Node cur = fireQueue.poll(); for (int i = 0; i < 4; i++) { // 4방향 탐지 int nx = cur.x + dx[i]; int ny = cur.y + dy[i]; if(nx < 0 || nx >= C || ny < 0 || ny >= R) continue; if(visitedFire[ny][nx] == 0 && (map[ny][nx].equals("."))){ visitedFire[ny][nx] = visitedFire[cur.y][cur.x] + 1; // 이동함을 표현 Node next = new Node(nx,ny); fireQueue.add(next); } } } } public static class Node { int x; int y; Node(int x, int y){ this.x = x; this.y = y; } } }

  • 코딩-테스트
  • java
댓글 2 좋아요 0 조회수 363

데이터 베이스가 만들어지지 않을 때

미해결

[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. 이렇게 적혀있더라고요. 이제 테이블을 자동으로 생성해주지 않아요 테이블 만들고 코드 복붙하면 데이터가 생깁니다. 그럼 이만

  • sql
  • dbms/rdbms
장재범 댓글 3 좋아요 9 조회수 844

기본 학습 테이블

해결됨

윤재성의 Oracle SQL Database 11g PL/SQL Developer

기본 학습테이블인 BONUS, DEPT, EMP, SALGRADE 가 요즘 쓰는 SQL Developer 버전에는 없네요.. 그래서 테이블 코드 복사해서 입력하면 자꾸 지정한 월이 부적합합니다. 오류가 뜨는데 해결을 못하고있어서 강의를 못듣고 있습니다 ..ㅠㅠ 해결방법좀 알려주세요.

  • sql
  • oracle
  • PL/SQL
  • dbms/rdbms
sy051398 댓글 1 좋아요 1 조회수 414

실습자료 복원

미해결

다양한 사례로 익히는 SQL 데이터 분석

안녕하세요. 윈도우 11 사용하고 있습니다. 실습 자료를 복원하는데 아래와 같은 문구가 나오면서 안 됩니다 .. 해결방법이 있을까요 ? unrecognized win32 error code: 123pg_restore: error: could not open input file "C:\Users\DS\Documents\???\????_?????_????\data_schema.backup": Invalid argument

  • sql
  • postgresql
  • dbms/rdbms
  • 퍼포먼스-마케팅
  • 데이터-엔지니어링
정동석 댓글 2 좋아요 0 조회수 371

인기 태그

인프런 TOP Writers

주간 인기글