안녕하세요 선생님, 질문 드립니다 A테이블과 B테이블을 조인해서 B테이블에만 있는 값을 가져오려고하는데요 두 테이블 간의 조인 key 값은 있지만 데이터 수는 다릅니다 예시로 A테이블에 10개의 데이터를 가지고있고 B테이블에 3개 데이터를 가지고있으면 A 의 10개 값에 B 값을 붙이려고합니다 안나오는 값은 null 이 되더라도 A 의 모수를 살리고싶은데 조인을 어떻게해도 같은거만 가져오는건지 3개만 반환이되서요.. A의 모수를 살리면서 B 값만 (마치 브이룩업처럼) 붙이는 방법을 알고싶습니다
안녕하세요 강사님 update, delete를 통한 데이터 수정, 삭제 강의를 듣는 도중 이상한 점이 있는것 같아 질문드립니다. update with dao 설명 중 var firstname과 var lastname의 반환값이 Filed<String>이 된다는 설명(약 7분정도)을 해주셨고 값이 없을때는 무시가 된다고 하셨는데, 7분 33초쯤에 로그를 아래 제가 첨부한 사진과 같이 나옵니다. last_name이 TTTTT로 되어있습니다. 편집상의 오류인지 로그 출력이 왜 저런지 의문이 들어 질문드립니다.
jOOQ generate을 통해서 생성된 Dao를 기반으로 R2DBC 환경에서 테스트를 진행할 때 findAll(), findById() 등 뒤에 fetch()가 붙어서 Blocking 방식으로 DB에 접근하게 되어 있었습니다. fetch() 코드를 들어가서 확인하였을 때 아래와 같았습니다. @Blocking <E> @NotNull List<E> fetch(RecordMapper<? super R, E> var1) throws DataAccessException; 그래서, jOOQ 공식 사이트에서 찾아보았을 때 아래와 같이 reactor fecth()가 가능하다는 것은 확인하였습니다. https://www.jooq.org/doc/latest/manual/sql-execution/fetching/reactive-fetching/ Dao을 적용해서 Reactor 방식으로 진행할 수 있는 방법은 없을까요?? 또한, Reactor Fetch 방식으로 실행하였을 때 디버깅 로그가 찍히지 않는 문제가 발생하고 있는데 이것에 대해서도 해결 방법이 있을까요??? Configuration이 적용되지 않는 것 같아서 아래와 같이 설정도 해보았지만 적용되지는 않았습니다. import io.r2dbc.spi.ConnectionFactory; ... @Configuration public class JooqConfig { public final ConnectionFactory connectionFactory; public JooqConfig(ConnectionFactory connectionFactory) { this.connectionFactory = connectionFactory; } ... @Bean public DSLContext jooQDSLContext() { DSLContext dsl = DSL.using(connectionFactory).dsl(); dsl.configuration().set(PerformanceListener::new); dsl.settings().withRenderSchema(false); return dsl; }
jOOQ를 공부하면서 너무 편하게 쿼리를 작성하고 있는데 한가지 불편한 점이 있어서 질문 드립니다. 단순 쿼리 결과를 확인하고 싶은 경우 마이바티스는 xml에 짠 쿼리를 DB 스키마와 바로 연결해 스프링부트를 띄울 필요 없이 intelliJ IDE에서 쿼리를 날리고 서비스 탭에서 쿼리 결과를 보여주도록 할 수있는데, jOOQ는 자바 코드로 되어 있어서 이렇게 IDE에서 바로 쿼리 결과를 확인해볼 수 없더라구요. 테스트코드로 실행한 후 나간 쿼리를 직접 sql 콘솔에 찍어 결과를 보거나, 강의 마지막에 알려주신 jooq SQL 변환 사이트로 자바 코드로 되어있는 jooq 구문을 sql로 변환해서 sql 콘솔에서 실행하는 방법 말고 더 편리한 방법이 있는지 궁금합니다.
윈도우 절 코드 실습 중입니다. select product_id, product_name, category_id , unit_price , sum(unit_price) over (partition by category_id order by unit_price rows between 1 preceding and 1 following) as unit_price_sum from products; 위 코드는 제공해주신 base 코드입니다. 해당 unit_price_sum을 소수점 둘째자리 까지만 표시하고자 round 함수를 썼는데, round(sum(unit_price) over (partition by category_id order by unit_price rows between 1 preceding and 1 following), 2) as unit_price_sum from products; "SQL Error [42883]: 오류: round(real, integer) 이름의 함수가 없음 Hint: 지정된 이름 및 인자 자료형과 일치하는 함수가 없습니다. 명시적 형변환자를 추가해야 할 수도 있습니다." 이와 같은 에러가 납니다. 그래서 with절로 해당 unit_price_sum을 temp_01이라는 임시 쿼리에 담아서 아래와 같이 했지만 이래도 위 오류와 동일하게 나오면서 되지 않네요 with temp_01 as ( select avg(unit_price) over (partition by category_id order by unit_price rows between 1 preceding and 1 following) as unit_price_avg from products ) select round(temp_01.*, 2) from temp_01; select product_id, product_name, category_id, unit_price ,avg(unit_price) over (partition by category_id order by unit_price rows between 1 preceding and 1 following) as unit_price_avg from products; 하는 방법이 있을까요? chat gpt도 서브쿼리로 답을 제공했는데 동일한 문제가 발생했습니다.
다음과 같이 실행했는데 오류가 뜨는데, 이유가 무엇일까요? SELECT * IF(speed >= 70, "빠름", "느림") AS Speed_Category FROM `inflearn-bigquery-practice.basic.pokemon` Syntax error: Expected end of input but got keyword IF at [3:3]
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. Group By 실습 -01 강의 ,1분 20초 select deptno, max(sal) as maxsal , min(sal) as minsal, round(avg(sal),2) as avgsal from hr.emp e group by e.deptno having round(avg(sal), 2) >=2000; avgsal >= 2000 을 사용하려했는데, 안되더군요. 원래 having절에서는 안되나요?
안녕하세요. sql기초를 닦고 데이터테크놀리지학과에 재학중인 학생입니다. 제가 궁금한부분은 다음관같아요. 백엔드부분은 어디까지 알면 좋을까요?데이터엔지니어를 희망하며 Sql공부중이고,Spark,kafka,airflow같은 부분도 공부를 해야할텐데. 비중을 저는 백엔드(java spring jpa) 보단 당연히 sql,spark,kafka,airflow에 실어야된다고 생각해요. 비중을 이쪽에 실으되, 백엔드(java spring jpa)공부도 하긴해야할텐데 어느정도까지는 그래도 해야된다.할줄알아야한다.이런게 있을까요? 아니다. 잘못알고있다.둘다잘해야한다.? 할게많아서 다하기 쉽지 않을것같아서 고민입니다. . Spring jpa도 비중있게 공부해야한다면 지금 조금 학습한상태에서 + 스프링db(JdbcTemplate, MyBatis 같은 SQL 매퍼 기술 부터, JPA, 스프링 데이터 JPA, Querydsl, 쓰레드로컬, 스프링aop), 스프링활용(스프링 부트와 JPA를 활용해서 웹 애플리케이션 개발, rest api개발) ,스프링부트, 스프링 데이터jpa, 이정도 계획입니다. 부족할까요? 과할까요 정보의 홍수에서 권철님 선생님의 조언이 제 올바른 방향의 길잡이에 큰 도움이 될것같습니다. 감사합니다