안녕하세요. 덕분에 좋은강의 잘 듣고 있습니다. 조인실습1에서 해당 내용 궁금하여 질문드립니다! select절에 다른 컬럼들도 있는데 1,2,3만 지정이 된건 그 컬럼들만 순서를 정하기 위함인가요? 그럼 나머지 컬럼들은 알아서 순서대로 출력된다고 보면 될까요? order by 1,2,3 맨 마지막에 c.fromdate가 들어간 이유는 fromdate 컬럼 기준으로 정렬을 해주기 위함일까요?
안녕하세요 강의를 듣다가 궁금증이 생겨서 질문을 드립니다. void init() { // given List<Product> products = List.of( createProduct("001", 1000), createProduct("002", 2000) ); // when Order order = Order.create(products, LocalDateTime.now()); // then assertThat(order.getOrderStatus()).isEqualByComparingTo(OrderStatus.INIT); } 강의에서 OrderTest 클래스 테스트 과정에서 enum을 비교할때 isEqualByComparingTo를 사용하셨습니다. assertThat(order.getOrderStatus()).isEqualTo(OrderStatus.INIT); 위와 같이 isEqualTo를 사용해도 enum을 비교할 수 있는데, 혹시 isEqualTo 대신 isEqualByComparingTo를 사용한 이유를 알 수 있을까요? isEqualByComparing가 정의된 AbstractComparableAssert.java를 확인해보면 BigDecimal을 예시로 들어서 사용법을 설명하고 있습니다. BigDecimal의 예시로 Enum을 써야 하는 방법을 생각해보았는데, 유추(?)가 잘 되지 않아서 질문을 남깁니다. 항상 좋은 강의 제공해주셔서 감사합니다!!😀😀
섹션 4. Group by 실습 01 강의 중 select deptno, max (sal) as max_sal, min (sal) as min_sal, round ( avg (sal), 2) as avg_sal from hr.emp group by deptno having avg >= 2000 ; 코드에 대한 질문이 있습니다. 막줄에서 avg >= 2000 대신 alias인 avg_sal >=2000 로 적으면 오류가 나는ㄷ 이처럼 having절에서는 별명으로 적으면 인식을 못하는 게 일반적인가요? 감사합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 해커랭크 Challenges 문제에 대해서 DELETE를 이용한 풀이로는 불가능한지 질문 드립니다! 위의 쿼리에서 WHERE절부터는 어떤 식으로 작성해야할 지 감이 잡히지 않아서 우선은 제가 생각한 내용으로 채웠습니다! 엉성한 질문이지만 답변해주시면 정말 감사하겠습니다!ㅠㅠ
안녕하세요. 정규표현식 문제를 풀다 의문이 생겨 문의드립니다. 'CITY가 모음으로 시작하는 CITY를 출력하라' 강의에서 '^[aeiou].*'로 알려주셨는데 .*는 뒤에 0개 이상의 어떤 문자가 들어와도 괜찮다는 것이니 '^[aeiou]'로 생략해도 문제가 없는 것인지 궁금합니다. 제가 생각했을 때 둘의 차이는 좀 더 자세히 표현한 정도라고 생각합니다. 이게 맞는지 궁금합니다. 답변해주셔서 미리 감사합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의를 듣다 의문점이 생겨 질문 드립니다. OrderDto는 JPA에서 생성된 객체가 아니고 직접 생성자로 만들어서 사용한 객체인데 왜 Hibernate5Module이 프록시 객체로 생각해서 null값을 반환하는지 모르겠습니다. 제가 긴시간 찾아보면서 생각한 이유는 이렇습니다. 강의 5분경 쯤에 api 호출시 Json에서 orderItems 가 null로 반환되는것을 보여주십니다. orderItems가 null로 반환되는것은 스프링이 string으로 응답을 보낼때 messageConverter가 json으로 변환해서 반환을합니다. 이때 orderItems가 JPA(Hibernate)에서 만든 프록시 객체로 되어있어 전강의에서 설정한 Hibernate5Module이 프록시 객체를 null로 바꾸기 때문에 orderItems가 null로 나타낸것으로 생각됩니다. 하지만 제가 디버깅 모드로 확인해본 결과 OrderDto안에 있는 orderItems는 프록시 객체가 아닌 실제로 생성된 객체였습니다.(OrderDto는 단순히 JPA가 관리 하지 않아서 당연하다고 생각합니다.) 강의 기준으로 orderItems 안에 있는 orderItem객체가 2개 존재하는데 orderItem객체는 JPA를 통해 생성된 객체이고 자세히 살펴보면 orderItem 안에 Item은 LAZY로딩으로 프록시 객체가 생성되어있습니다. 혹시몰라 Hibernate5Module을 끄고 실행한 결과 Item이 @JsonIgnore가 있으면 orderItems가 제대로 결과 값이 나오고 @JsonIgnore이 없으면 프록시 객체를 Json으로 변환하지 못해서 오류가 발생합니다. 그럼 Hibernate5Module는 엔티티 안에 객체의 값중 하나라도 프록시 객체가 있다면 다른 객체의 값이 있든 말든 그냥 null을 반환하는 걸까요?? 제가 이해한것이 맞는지 궁금해서 질문드립니다. 긴글 읽어주셔서 감사합니다.
안녕하세요, 강의 잘 듣던 중 궁금한 점이 생겨 질문 남깁니다. Outer join 실습 - 02에서 -- orders_items에 주문번호(order_id)가 없는 order_id를 가진 orders 데이터 찾기 select * from nw.orders a left join nw.order_items b on a.order_id = b.order_id; where b.order_id is null ; 여기서 만약 결과값이 있는 데이터였다고 가정할때 is null이 쓰인 where 절에서 a.order_id로 쓰면 원하는 결과값이 나오지 않는 게 맞나요?
[질문 내용] 상품주문_재고수량초과 테스트할 때 Junit5 사용해서 expected가 없습니다. import static org.junit.jupiter.api.Assertions.*; @Test public void 상품주문_재고수량초과() throws Exception { //given Member member = createMember(); Item item = createBook("시골", 10000, 10); int orderCount = 11; //when //then assertThrows(NotEnoughStockException.class, ()-> orderService.order(member.getId(), item.getId(), orderCount)); } 그래서 이렇게 작성해서 초록불은 떴는데 적절하게 작성했는지 궁금합니다. 더 좋은 예시가 있는 지 궁금합니다.
안녕하세요. 강의 잘 듣고 있습니다. Challenge 문제에서 선생님이 써주신 코드 중 질문있어 글 남깁니다. 첫째줄에 , SELECT hackers.hacker_id, hackers.name , count(*) Challenges_created 라고 써져있는데 여기서 count(*)이 아니고 count(challenge_id) as challenges_created 라고 써도 되지 않나요? 혹시 차이가 있다면 무슨 차이인지 알고 싶습니다.
select * from nw.orders a where a.order_date = ( select min (order_date) from nw.orders x where x.customer_id = a.customer_id ); 이 쿼리가 실행되는 이유는 서브쿼리로 전달되는 메인쿼리의 레코드에 대한 결과가 한 건만 나와서 가능한게 맞나요?
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. mysql_basic 강의안 노트북에서 https://www.fun-coding.org/00_Images 여기서 가져오는 이미지들이 다 안보이는데 저만 그런걸까요..?
-- max, min 함수는 숫자열 뿐만 아니라, 문자열,날짜/시간 타입에도 적용가능. select deptno, max (job), min (ename), max (hiredate), min (hiredate) --, sum(ename) --, avg(ename) from hr.emp group by deptno; deptno 컬럼으로 그룹핑한 후 max(job)을 해서 나오는 컬럼값은 그룹에서 어떤 기준으로 나오는 건가요?