inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

DEPARTMENT HIGHEST SALARY 서브쿼리 문제 문의

미해결

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

아래와 같은 쿼리를 리트코드에 입력하였는데, 계속 오류가 났다고 하는데 어디가 잘못되었는지 알 수 있을까요? 그리고 다른 쿼리는 작성했는데 AND e.salary = dh.max_salary 해당 쿼리는 생각을 못하고 그냥 SELECT 최종구문에서 MAX(Salary)를 뽑아내면 된다고 생각했는데 어떤 부분이 잘못되었는지 알 수 있을까요? 감사합니다. SELECT d.name AS Deparment , e.name AS Employee , e.salary as Salary FROM employee AS e INNER JOIN( SELECT departmentid, MAX(salary) AS max_salary FROM employee GROUP BY departmentid ) AS dh ON dh.departmentid = e.departmentid AND e.salary = dh.max_salary INNER JOIN department AS d ON e.departmentid = d.id

  • sql
David Lee 댓글 1 좋아요 0 조회수 255

work bench 설치관련 문의

해결됨

SQL 코딩테스트를 위한 첫 걸음

안녕하세요 윈도우 환경에서 work bench 설치 관련하여 문의드립니다. 영상 상으로는 Developer default로 설정해서 설치하는 걸로 되어 있는데 저는 따로 그 옵션이 없습니다. Custom으로 설정해서 pdf 파일에 본대로 똑같이 설치하면 Workbench가 설치가 안되서요 사진 첨부 합니다 확인부탁드립니다..!

  • sql
  • mysql
  • 코딩-테스트
합격가자 댓글 2 좋아요 1 조회수 302

pubs다운 오류

미해결

MSSQL Server 2016 기반의 데이터베이스 입문에서 활용까지 Part.1

cmd에 sqlcmd -i instpubs.sql 입력해 실행하니 명명된 파이프 공급자: SQL Server에 대한 연결을 열 수 없습니다. Sqlcmd: 오류: 로그인 제한 시간이 만료되었습니다.. 이렇게 뜹니다. 어떻게 해야 해결할 수 있을까요?

  • sql
  • dbms/rdbms
  • mssql
psh9306 댓글 1 좋아요 1 조회수 337

섹션4-5) 'to_char'를 활용하는 이유가 궁금합니다.

해결됨

데이터 분석 SQL Fundamentals

안녕하세요, [Group By 절에 가공 컬럼 및 case when 적용 실습] 강의 2:18쯤 나오는 화면인데요, hiredate에서 연도만 추출하고 싶을 때 데이터 타입을 그대로 날짜로 두지 않고 굳이 to_char를 활용해서 문자로 바꿔주는 이유가 무엇인지 궁금합니다. 감사합니다.

  • sql
  • postgresql
  • dbms/rdbms
khloe 댓글 1 좋아요 0 조회수 191

beforeEach를 추가했음에도 afterEach가 필요한 이유

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 마지막에 beforeEach 메소드를 추가하여 매번 객체를 생성하게 되잖아요. 그러면 굳이 afterEach() 메소드로 매번 clear할 필요가 없다고 생각했었는데 afterEach() 메소드를 주석 처리하면 오류가 나더라고요. 제 생각엔 MemoryMemberRepository의 store 변수가 static이기 때문에 beforeEach() 메소드로 매번 객체를 새로 생성하더라도 static 변수는 새로 생기지 않고 기존의 것이 계속 공유되고 있기 때문에 afterEach()가 필요한 거 아닐까 싶은데 제가 정확히 이해한 게 맞는지, 제 생각에 오류가 있는지 궁금합니다.

  • java
  • spring
  • mvc
  • spring-boot
11 1 댓글 2 좋아요 3 조회수 598

서브쿼리의 활용사례 및 조인관련질문

미해결

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

특정 문제에 대한 질문이 아니라 강의 학습 중 활용에 관한 질문인데요. 1. 프로그래머스 스쿨과 해커랭크 등에서 배운 내용들을 적용하며 풀고 있는데, 서브쿼리를 사용하겠다는 단서를 파악할 수 있는 방법이 있을까요? 어떤 경우에는 서브쿼리를 사용했는데 왜 서브쿼리를 사용해야하는지마저 떠올리지 못해서 활용을 제대로 못하고 있는거 같습니다. 조인을 할 때 left join과 inner join의 차이 inner join은 보면 null값을 포함하지 않고 left join은 null값을 포함하는 것으로 인지하고 있어서 웬만하면 실수를 줄이기 위해서 left join을 쓰는데 이것도 맞다고 볼 수 있을까요? 긴 글 읽어주셔서 감사합니다.

  • sql
David Lee 댓글 1 좋아요 0 조회수 301

궁금한점 있습니다

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요 강사님 궁금한것이 있어서 질문 남깁니다 public void returnBook(String bookName) { UserLoanHistory targetHistory = this.userLoanHistories.stream () .filter(history -> history.getBookName().equals(bookName)) .findFirst() .orElseThrow(IllegalAccessError::new); //findFist()는 옵셔널로 반홚나다 targetHistory.doReturn(); } 이 로직에서 만약 한 책을 빌렸다가 반납하면 그 히스토리를 반납완료 상태로 만들어주고 끝내고 다시 그 책을 빌리려고 한다면 새로운 히스토리를 만들어서 List에 저장할텐데 그럼 다시 그책을 반납할 경우 findFirst()를 해서 그 히스토리를 찾아왔을때 이미 반납된 책을 다시 반납하는 행위가 되는것이 아닌건지 궁금해서 질문 드립니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
wjddjs21 댓글 1 좋아요 2 조회수 271

의존성조언에서 UserService의 login은 Clock에 의존하는지 모르지 않나요?

미해결

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

의존성 조언 두번째 방법에서 문제점이 UserService.login은 여전히 의존성이 감춰져있다. 위와 마찬가지로 Userservice.login을 테스트할 때 clock에 의존하고 있는지 알 수 없다. 이거였는데 세번 째 방법도 UserService를 사용하는 메서드는 login(user)만 남겨서 user가 Clock에 의존하는지 모르지 않나요? 아까 맥도날드 예제에서는 인터페이스를 사용하면 일을 시킨다고 설명하셨는데 이것도 인터페이스를 사용해서 일을 시키는거니 이렇게 구현하면 내부에서 clockHolder를 사용해도 외부에서 몰라도 되나요?

  • java
  • spring
  • 객체지향
  • 소프트웨어-테스트
seiyoung an 댓글 2 좋아요 0 조회수 472

JOIN, 서브쿼리 결과 정렬 질문

미해결

[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!

-- 4. 강의별 평균 학점, 꿀강의 TOP 3 조회 SELECT courses.title AS "강의명", ROUND(AVG(grade_points.point), 2) AS "평균 학점" FROM courses JOIN grades ON grades.course_id = courses.id JOIN grade_points ON grade_points.grade = grades.grade GROUP BY courses.title ORDER BY AVG(point) DESC LIMIT 3 ; -- 서브쿼리 이용 답 SELECT courses.title AS "강의명", ggul_courses.round AS "평균 학점" FROM courses JOIN ( -- 강의별_평균학점 SELECT course_id, ROUND(AVG(grade_points.point), 2) FROM grades JOIN grade_points ON grade_points.grade = grades.grade GROUP BY course_id HAVING AVG(point) > ( -- 모든_강의의_평균_학점 SELECT AVG(point) FROM grades JOIN grade_points ON grade_points.grade = grades.grade ) ORDER BY AVG(point) DESC LIMIT 3 ) AS ggul_courses ON ggul_courses.course_id = courses.id ; 일반 JOIN이용과 서브쿼리 이용 결과가 다르게 출력되는데 서브쿼리 안에서 정렬을 했지만 최종 결과는 정렬이 되지 않네요? 왜 그런건가요..? 이러면 JOIN이 더 나은 걸까요?

  • sql
  • postgresql
  • dbms/rdbms
상괭이 댓글 1 좋아요 0 조회수 400

JOIN만 사용 vs 서브쿼리 사용

미해결

[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!

-- 3. 평균 학점이 3.5미만인 학생은? SELECT students.nickname AS "닉네임", ROUND(AVG(grade_points.point),2) AS "평균 학점" FROM students JOIN grades ON grades.student_id = students.id JOIN grade_points ON grade_points.grade = grades.grade GROUP BY students.nickname HAVING 3.5 > AVG(grade_points.point) ; -- 서브 쿼리 이용 답 SELECT students.nickname AS "닉네임", avg_grade_point.round AS "평균 학점" FROM students JOIN (-- 학생별_평균_학점 SELECT student_id, ROUND(AVG(point), 2) FROM grades JOIN grade_points ON grade_points.grade = grades.grade GROUP BY student_id HAVING AVG(point) < 3.5 ) AS avg_grade_point ON avg_grade_point.student_id = students.id ; 서브 쿼리를 이용하려고 생각하는 게 좋을까요? 단순히 JOIN만 사용해서 할 수 있으면 JOIN만 써도 괜찮을까요..? 현업에서는 어떤 걸 더 많이 쓰게 될지 궁금합니다!

  • sql
  • postgresql
  • dbms/rdbms
상괭이 댓글 1 좋아요 0 조회수 581

Average Population 질문 있습니다.

미해결

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

답이 SELECT ROUND(AVG(population)) FROM city; 이건데 SELECT AVG(POPULATION) AS AVG_POP FROM CITY WHERE ROUND(AVG_POP, 0); 이렇게 하면 안되던데 WHERE 을 쓰면 안되는건가요?

  • sql
hipass4 댓글 1 좋아요 0 조회수 272

count(*)과 AS가 사용가능한절 TOP EARNERS문제

미해결

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

안녕하세요 해당 문제에 대한 반복 수강으로 서브쿼리에 대한 이해가 어느정도 되었는데 문제를 외워서 푼 감도 있어서 몇 가지 여쭤봅니다 /*SELECT months*salary AS earnings, count(*) FROM employee WHERE months*salary = (SELECT MAX(months*salary) FROM employee) GROUP BY earnings*/ SELECT months*salary AS earnings, count(*) FROM employee GROUP BY earnings HAVING earnings = (SELECT MAX(months*salary) FROM employee) 아래와 같이 쿼리를 짰는데 WHERE절에는 선생님께서 earnings 알리아스로 축약한 것을 사용할 수 없다고 하시더라고요 where절만 특징적으로 그런건가요? 반대로 having절에서는 months*salary로는 값이 안나오고 earnings로 했을 때는 정답이 출력되어서요 as가 어느절에서는 적용이 되고 안되는지 명확한 이해가 필요할 거 같습니다. 마지막에 select count(*)을 해서 최대 임금을 가진 그룹바이로 엮은 값의 수를 구하였는데 이전 문제들 중 count(*)대신 전체를 셀 때 name이나 id 등으로도 가능했는데 여기서는 기준이 같은 점수 예를 들어 108044 jane 108044 kim 이런식이어서 이름으로는 묶을 수 없는게 맞을까요? count(*)의 정의가 명확히 정립이 안된거 같습니다ㅜ 감사합니다.

  • sql
David Lee 댓글 2 좋아요 0 조회수 269

cafe 테이블을 언제 만들었나요..?

미해결

[개념은 호옹~, 실습 빡] SQL 데이터 분석, 활용!

cafe 테이블을 언제 만들었나요..? 만든 적이 없는데 만들어져 있으시네요

  • sql
  • postgresql
  • dbms/rdbms
상괭이 댓글 1 좋아요 0 조회수 287

사용자 정의 함수 방언 등록

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 사용자 정의함수를 db에 등록시켜놓은 다음에 jpql로 사용을 해보니 따로 방언을 등록하지 않아도 사용이 가능합니다. List<String> str = em.createQuery("select create_prefix(m.username) from Member m", String.class).getResultList(); create_prefix는 직접 등록한 함수입니다. 수업에서는 방언으로 사용자 정의 함수를 등록해야지 적용이 된다고 하는데 이 경우 왜 작동되는지 알고싶습니다.

  • java
  • jpa
준영 댓글 2 좋아요 1 조회수 874

@Autowired와 @Transactional으로 EntityManager주입 받기

미해결

실전! 스프링 데이터 JPA

@Autowired로 EntityManager를 주입받을때 여러 쓰레드가 동시에 접근하면 동시성 문제가 발생합니다. 하지만 @Transactional 을 추가해준다면 //1 @Repository @RequiredArgsConstructor @Transactional public class AutowiredRepository { private final EntityManager em; } //2 @Repository public class PersistenceContextRepository { @PersistenceContext private EntityManager em; } @PersistenceContext 처럼 Transaction에 의해 쓰레드간 동시성 문제를 해결해준다 고 생각하는데 맞게 생각한건지 궁금합니다. 두가지 방법 다 EntityManager를 호출 할때마다 Proxy를 통해 EntityManager를 생성하여 Thread-Safe를 보장해준다라고 볼수 있는 건가요?? 답변주시면 정말 감사하겠습니다.

  • java
  • spring
  • spring-boot
  • jpa
코딩먹는하마 댓글 1 좋아요 1 조회수 622

order by 정렬 문의

미해결

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

안녕하세요 강사님 group by + distinct를 비교해보다 이유는 모르겠지만 위에 distinct를 넣은 것은 day 컬럼이 자동으로 정렬이 되었고 아래의 distinct를 넣지 않은 컬럼은 정렬 되지 않았습니다 아래도 역시 distinct 를 넣으니 자동 오름차순이 되었습니다 ( count ( DISTINCT oi.order_id)) 혹시 그 이유가 궁금합니다 또, order by 처리 시 쿼리 속도가 느려진다는 말이 있는데 이런식으로 order by 를 넣지 않고 자동 정렬 되는 것이 있다면 쿼리 속도 향상에 도움이 될까요? 쿼리문 자동 정렬 SELECT date_part ( 'day', o.order_date) AS DAY , sum (amount) AS sum_amount , count ( DISTINCT o.order_id) AS daily_ord_cut FROM orders o , order_items oi WHERE 1 = 1 AND o.order_id = oi.order_id GROUP BY date_part ( 'day', o.order_date) ORDER BY 1 ; 정렬 안됨 SELECT date_part ( 'day', o.order_date) AS DAY , sum (amount) AS sum_amount , count ( oi.order_id) AS daily_ord_cut FROM orders o , order_items oi WHERE 1 = 1 AND o.order_id = oi.order_id GROUP BY date_part ( 'day', o.order_date);

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

penJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 이러한 오류가 뜨는데, 실행하는데는 문제가 없습니다. 이 오류를 고쳐야 할 것 같은데, 어떻게 고쳐야할까요?

  • java
  • spring
  • mvc
  • spring-boot
댓글 1 좋아요 0 조회수 380

실무에서 사용자 정의 함수를 많이 사용하나요?

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

실무에서 DB방언을 상속받아 사용자 정의 함수를 등록해서 사용하는 경우가 많은지 궁금합니다!

  • java
  • jpa
spacebar 댓글 1 좋아요 0 조회수 366

안녕하세요 강사님 이전 재고 관리 강의와 차이에 대해 궁금합니다.

미해결

실습으로 배우는 선착순 이벤트 시스템

쿠폰 생성 발급 로직도 컬럼에 쿠폰의 개수를 지정해놓으면 이전 강의랑 똑같은 거 같은데 왜 이번 강의는 쿠폰 엔티티를 새로 생성해서 그 개수를 체크하는 건지 궁금합니다. 이전 컬럼에 개수를 두어 관리하는 거랑 지금처럼 엔티티를 생성하는 방식의 차이점이 너무 궁금해요 항상 감사합니다.

  • java
  • docker
  • spring-boot
  • kafka
  • redis
진짜 잘하고싶다 댓글 2 좋아요 0 조회수 583

수업과 동일한 SQL 쿼리시 중복으로 값이 나오는 이유

미해결

데이터 분석 SQL Fundamentals

안녕하세요, 강사님 수업을 들은 후에 DBeaver로 쿼리를 따라해보면서 복습을 하고 있습니다. 그런데 이상하게도 강사님과 동일한 쿼리를 입력하여도 저는 중복으로 값이 나오는 현상이 때때로 있습니다. 예를 들어 아래의 between 문법의 경우, 행의 갯수는 총 12개가 되어야 맞는데 저는 중복이 되어서 24개가 되네요. select a.*, b.grade as salgrade, b.losal, b.hisal from hr.emp a join hr.salgrade b on a.sal between b.losal and b.hisal; 처음엔 제가 쿼리를 잘못 입력한줄 알았는데, 동일한 쿼리인데도 이런 경우가 가끔 발생하더라구요. 앞에 제가 연습하면서 수행했던 쿼리의 캐시값이 남아서 이렇게 되는 것일까요? 원인을 알아서 해결하고 싶습니다 ㅠㅠ

  • sql
  • postgresql
  • dbms/rdbms
Hannah Uh 댓글 2 좋아요 0 조회수 722

인기 태그

인프런 TOP Writers

주간 인기글