묻고 답해요
143만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[백문이불여일타] 데이터 분석을 위한 SQL 실전편 (무료 미니 코스)
모드 유료창
쿼리작성 페이지로 넘어갈 때 유료창이 뜨는데 시스템이 바뀐걸까요..?
-
미해결다양한 사례로 익히는 SQL 데이터 분석
"사용자별 특정 상품 주문시 함께 가장 많이 주문된 다른 상품 추출하기"에서 조건관련..
주문별 고객별 연관 상품 추출 SQL로 구하기 -02 강의를 듣던중 궁금한점이 있어 글을 남기게 되었습니다.임시테이블 temp_01 에서 인데요..고객별 주문별 연관상품 추출하려면 user_id도 같아야하겠지만, order_id(주문번호)도 같다는 조건 하에 self join해야하지 않을까 싶어서요.select a.user_id, a.product_id as prod_01, b.product_id as prod_02from temp_00 ajoin temp_00 b on a.user_id = b.user_idand a.order_id = b.order_id -- 이 부분 추가되어야하지 않을지 궁금합니다.where a.product_id != b.product_id감사합니다.
-
해결됨초보자를 위한 BigQuery(SQL) 입문
파일 업로드 오류와 관련해서 재질문 합니다.
질문 드렸던 이전 게시글▶ https://www.inflearn.com/questions/1229720/pokemon-%ED%85%8C%EC%9D%B4%EB%B8%94%EC%9D%84-%EC%83%9D%EC%84%B1%ED%95%98%EA%B3%A0%EC%9E%90-%ED%95%98%EB%8A%94%EB%8D%B0-%EB%9C%A8%EB%8A%94-%EC%98%A4%EB%A5%98?re_comment_id=349352 =구글 드라이브에 파일을 업로드 한 후 공유 드립니다.https://drive.google.com/file/d/1Z8y2eJSlwfYEexaxyAan7Rt3xPrJtznE/view?usp=sharing
-
미해결비전공자의 전공자 따라잡기 - 데이터베이스,SQL
제 2 정규형 질문
제 2정규형을 보다 보니 질문이 생겼습니다.아이폰 제품에 대한 데이터베이스를 만들 때예를 들어 아래와 같이 9가지 정보만 간단히 표기하고 싶을 때 하나의 테이블에 다 넣는 것이 아니라 <I Phone 제품 테이블>-모델명-용량-출시일-OS 정보-색상-RAM-카메라-칩-시리얼 넘버 이런식으로 해야하는건가요? <I Phone 제품 테이블>-모델명-용량-출시일-OS 정보-색상-RAM-카메라-칩-시리얼 넘버 <모델명 테이블>-모델명-용량-출시일-색상 <RAM 테이블>-RAM 종류 <카메라 테이블>-카메라 종류 <칩 테이블>-칩 종류 <OS 테이블>-OS 종류
-
미해결[7일완성]생각하는 데이터베이스모델링
테이블정의서 NN(NotNull)
고객코드에 대해서 NN에는 Yes의 Y가 들어와야하는 것 아닌가요??
-
해결됨실전 jOOQ! Type Safe SQL with Java
하나의 디비를 여러 백엔드 서버가 필요로 할 때, flyway 관리
전제 및 요구사항 DB 하나에 종류가 다른 서버가 4개가 붙어있습니다. flyway를 통해서 DB version control을 하고 싶습니다. node의 nestjs와 typeorm을 사용할 때는 CICD 단계에서 typeorm-migration을 통해서 기존에 만들어둔 DDL 쿼리를 적용한 후 앱 빌드 후 배포해서 dev & prod 환경에서 문제가 없게끔 돌아갔습니다.질문스프링에서 CICD(ex github action) 단계 때 flyway가 실행되어서 테이블을 데브나 프로덕션 단계 때 마이그레이션 적용이 가능할까요?(실습) Testcontainers + Flyway를 통해 DDL로 jOOQ DSL 만들기 에서 본 대로 이해한다면 각각 레포지토리마다 DB 폴더를 만들고 V1__init_tables.sql를 다 만들어야 dsl을 생성할 수 있어 보이는데, 그러면 프로젝트(레포지토리)가 4개나 되다 보니, table 버전 관리가 안 될 것 같고 이미 테이블을 생성 되었는데 또 테이블을 생성하는 .sql을 실행해야 할 것 같아서 문제가 생길 것 같은데, 방법이 있을까요?
-
미해결실무에 바로 쓰자! 이커머스 데이터로 배우는 실전 SQL 분석
SQL 라이트가 ORDER를 인식하지 못합니다
선생님이 알려주신 그대로 진행했음에도 불구하고 구현이 안되네요 ㅠ
-
미해결Do it! SQL 입문
DoitSQL.bak 파일은 어디서 다운받나요?
DoitSQL.bak 파일은 어디서 다운받나요? 설치환경 설정에서 보이진 않아 문의드립니다.
-
해결됨실무에 바로 쓰자! 이커머스 데이터로 배우는 실전 SQL 분석
여기서 WHERE 1=1을 왜 쓰는 걸까요?
WHERE 1=1을 제외하면 SQL 실행이 안되는데 있고 없고 차이가 어떤 의미인지 궁금합니다
-
해결됨초보자를 위한 BigQuery(SQL) 입문
Espanso 실행 문제 해결
안녕하세요. 수업 유익하게 잘 듣고 있습니다! Espanso를 다운받아서 설정해봤는데요! 텍스트 편집기에서 수정까지 되었고, espanso 프로그램에서 open search bar 를 눌러봤을 때 첨부드린 이미지처럼 :sql 이 잘 들어가 있습니다. 그런데 :sql 과 같은 trigger 단어를 입력해도 변하지 않아서 어떤 다른 해결 방법이 있을지 문의드립니다.혹시 espanso의 설정 수정까지는 잘 되었으나, espanso가 어떤 권한 문제로 적용이 안될 수도 있나요? 추가로 시도해볼만한 방법이 있다면 안내 부탁드립니다. 감사합니다!
-
미해결[백문이불여일타] 데이터 분석을 위한 SQL 실전편 (무료 미니 코스)
이메일 오픈 비율 값이 예시와 다르게 나와요
이메일 오픈 비율을 카운트로 뽑고 구글에서 퍼센테이지 변환 했습니다. 그런데 제시된 데이터 프레임에 있는 퍼센테이지와는 다른 값이 나왔는데 .. 문제가 없는건가요?? 분석 자료로 주신 엑셀 자료에서도 모드에서 제공되는 예시와 동일한데 저만 결과가 다르게 나오니까 뭐가 문제인지 모르겠습니다..!!
-
해결됨장래쌤과 함께하는 쉽고 재미있는 SQL 이야기
Join 질문
안녕하세요 선생님, 질문 드립니다 A테이블과 B테이블을 조인해서 B테이블에만 있는 값을 가져오려고하는데요 두 테이블 간의 조인 key 값은 있지만 데이터 수는 다릅니다 예시로 A테이블에 10개의 데이터를 가지고있고 B테이블에 3개 데이터를 가지고있으면 A 의 10개 값에 B 값을 붙이려고합니다 안나오는 값은 null 이 되더라도 A 의 모수를 살리고싶은데 조인을 어떻게해도 같은거만 가져오는건지 3개만 반환이되서요.. A의 모수를 살리면서 B 값만 (마치 브이룩업처럼) 붙이는 방법을 알고싶습니다
-
해결됨실전 jOOQ! Type Safe SQL with Java
dslContext 작성 시 fetchGroups 이렇게 작성해도 될까요?
fun findActorFilmography(searchOption: ActorFilmographySearchOption): List<ActorFilmography> { val actorListMap = dslContext.select( ACTOR, FILM, ).from(ACTOR) .join(FILM_ACTOR).on(ACTOR.ACTOR_ID.eq(FILM_ACTOR.ACTOR_ID)) .join(FILM).on(FILM.FILM_ID.eq(FILM_ACTOR.FILM_ID)) .where( containsIfNotBlank(ACTOR.FIRST_NAME.concat(" ").concat(ACTOR.LAST_NAME), searchOption.actorName), containsIfNotBlank(FILM.TITLE, searchOption.filmTitle), ) // 이 부분!! .fetchGroups( { record -> record[ACTOR.name, Actor::class.java] }, { record -> record[FILM.name, Film::class.java] } ) return actorListMap.entries .map { entry -> ActorFilmography(entry.key, entry.value) } } private fun containsIfNotBlank(field: Field<String?>, inputValue: String?): Condition { if (inputValue.isNullOrBlank()) { return DSL.noCondition() } return field.likeRegex(inputValue) }alias을 사용하지 않고, name으로 추출해봤더니 데이터가 정상적으로 잘 나와서요!! 혹시나 예외 케이스도 있을 수 있을 것 같아 질문합니다!
-
해결됨실전 jOOQ! Type Safe SQL with Java
update with dto 질문
안녕하세요 강사님update, delete를 통한 데이터 수정, 삭제 강의를 듣는 도중 이상한 점이 있는것 같아 질문드립니다.update with dao 설명 중 var firstname과 var lastname의 반환값이 Filed<String>이 된다는 설명(약 7분정도)을 해주셨고 값이 없을때는 무시가 된다고 하셨는데,7분 33초쯤에 로그를 아래 제가 첨부한 사진과 같이 나옵니다.last_name이 TTTTT로 되어있습니다.편집상의 오류인지 로그 출력이 왜 저런지 의문이 들어 질문드립니다.
-
해결됨실전 jOOQ! Type Safe SQL with Java
R2DBC 환경에서 jOOQ generate 된 Dao를 사용할 수 있는 방법이 있을까요?
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; }
-
미해결Database - SQL
MySQL 실습
CUSTOMER ID FORMATTING- 1: 00001- 2: 00002- 13: 00013SELECT CUSTOMERID, CONCAT(REPEAT('0', 5-LENGTH(CUSTOMERID)), CUSTOMERID)FROM CUSTOMER;MySQL은 문자열 + 하기 연산이 없어서CONCAT 함수를 사용해야 합니다
-
해결됨실전 jOOQ! Type Safe SQL with Java
IDE로 스프링부트 실행없이 jooq로 짠 쿼리 결과를 바로 확인하는 방법이 있을까요?
jOOQ를 공부하면서 너무 편하게 쿼리를 작성하고 있는데 한가지 불편한 점이 있어서 질문 드립니다. 단순 쿼리 결과를 확인하고 싶은 경우 마이바티스는 xml에 짠 쿼리를 DB 스키마와 바로 연결해 스프링부트를 띄울 필요 없이 intelliJ IDE에서 쿼리를 날리고 서비스 탭에서 쿼리 결과를 보여주도록 할 수있는데, jOOQ는 자바 코드로 되어 있어서 이렇게 IDE에서 바로 쿼리 결과를 확인해볼 수 없더라구요. 테스트코드로 실행한 후 나간 쿼리를 직접 sql 콘솔에 찍어 결과를 보거나, 강의 마지막에 알려주신 jooq SQL 변환 사이트로 자바 코드로 되어있는 jooq 구문을 sql로 변환해서 sql 콘솔에서 실행하는 방법 말고 더 편리한 방법이 있는지 궁금합니다.
-
미해결데이터 분석 SQL Fundamentals
다양한 window절의 이해 -01, 02
윈도우 절 코드 실습 중입니다.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도 서브쿼리로 답을 제공했는데 동일한 문제가 발생했습니다.
-
해결됨장래쌤과 함께하는 쉽고 재미있는 SQL 이야기
pdf 문의드립니다
안녕하세요 강사님혹시 강의 pdf는 따로 다운하는 곳이 있을까요?
-
해결됨초보자를 위한 BigQuery(SQL) 입문
활용편 급합니다.....
활용편 언제 나오나요급합니다.... 빨리 내놓으십쇼..유료로 내주셔도 긁겠습니다