묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨AI 다루는 백엔드 설계 기본 - SpringBoot SNS 편
hooks가 동작하기 위한 내용이 없는 것 같아서 추가가 필요하지 않을까 싶습니다.
Claude Code활용(Skills, Hooks)에서 hook과 관련된 설정(예: spotless)내용은 깃 주소에 올려진 프로젝트의 build.gradle.kts에 반영이 되어 있지 않은 것 같아요. hooks경로에 lint.sh는 생성이 되어 있는데 말이죠. settings.loca.json 파일도 없어요. 강의에 관련 설명만 존재하기 떄문에 git에 올려진 프로젝트에 업데이트를 해주시면 어떨까 싶습니다.
-
해결됨AI 다루는 백엔드 설계 기본 - SpringBoot SNS 편
.claude폴더를 복붙해서 넣긴 넣었는데 궁금한 점이 생겼어요.
.claude 폴더가 어떻게 해당 프로젝트에 생성되게하나요? 해당 프로젝트에서 claude실행한다고 생성되지는 않는 것 같은데...claude폴더가 생성되는게 어떤 것에 의해 기본적으로 생성될 때 agents, commands, hooks, skill는 생성이 되지 않고, 필요에 의해 각 경로를 생성하고 skills안에 spring-api-rules와 같은 원하는 것들(주로 어떤 항목들에 대한 것들을 넣으시는지도 궁금합니다.)을 넣으면 되는지 궁금합니다.해당 프로젝트에 폴더로 생성되는 것과 맥북의 root(?) 폴더에 .claude로 생성되는 것에 어떤 차이가 있나요?
-
해결됨AI 다루는 백엔드 설계 기본 - SpringBoot SNS 편
터미널에서 claude 입력 과정
3분 7초대에 터미널에서 claude 입력할 때, 그 전에 설정과정들을 알려주면 이해하기 편할 것 같습니다. 처음이라 찾아보는데 시간이 좀 걸렸습니다.
-
해결됨AI 다루는 백엔드 설계 기본 - SpringBoot SNS 편
.claude 안에 폴더 및 파일은 어떻게 생성하죠?
.claude 안에 폴더 및 파일은 어떻게 생성하죠?
-
미해결[2025 신규] 어서와, Fast API는 처음이지?
설치오류
SQL 설치하는데 이거 왜이럴까요 ㅠㅠ
-
미해결Grafana 설치하고 대시보드 만들기
posgresSQL 설치시 에러 내용
안녕하세요. grafana 수강자 입니다. posgresSQL 설치시 에러 내용 입니다. .' Error response from daemon: ports are not available: exposing port TCP 0.0.0.0:5432 -> 127.0.0.1:0: listen tcp 0.0.0.0:5432: bind: address already in use ''port 번호를 변경하면 실행이 안돼는것 같습니다. 어떻게 해야 할까요?
-
미해결프론트 개발자를 위한 백엔드 101 (NestJS, TypeORM)
db연결이 다되었는데 tables에 posts 테이블이 안생겨요
초반 dmg로 다운받을때도 , 다운받고 뭐 초기셋팅 진행해서 해당 로그처럼 서버 데이터 베이스 선택하는거 psql에 없었는데, 명령어 찾아서 아이디 만들고 권한주고 db만들고 꾸역꾸역해서 jdbc 연결했더니 테이블안생김.. ㅈㄴ 스트레스받음. 노션에 있는거 긁어서 그대로 해서 틀린거없음 커서에서 검증도함 대체 원인을 모르겟
-
해결됨데이터 분석을 위한 SQL 문제풀이 (Advent of SQL 2024)
게임을 10개 이상 발매한 게임 배급사 찾기
WITH STAT AS( SELECT publisher_id, name FROM games GROUP BY publisher_id, name HAVING COUNT(*) >=10 ) SELECT A.name FROM STAT AS A JOIN companies AS B ON A.publisher_id = B.company_id mysql로 이렇게 작성하니까 답이 하나만 나오는데, 강사님이 작성한 코드SELECT name FROM( SELECT publisher_id, COUNT(*) AS CNT FROM games GROUP BY publisher_id HAVING CNT>= 10 ) AS A JOIN companies AS B ON A.publisher_id = B.company_id이것과 차이가 뭔지 궁금합니다
-
미해결다양한 사례로 익히는 SQL 데이터 분석
쿼리 질문있습니다!!
selectgenerate_series('2016-08-02'::date, '2016-11-01'::date, '1 day'::interval)::dateascurrent_date)위의 쿼리로 series를 생성하신 이유가selectdate_trunc('day', visit_stime)::dateascurr_datefromga_sessgroupbydate_trunc('day', visit_stime))이 쿼리로 temp_00을 생성하면 11-01 일자의 dau를 구할수 없어서 인지 궁금합니다!
-
미해결데이터 분석 SQL Fundamentals
join 관련 질문 (inner join, left join)
inner join과 left join에 대해서 이론적으로는 이해가 되는데 실제 테이블 관계 설정시 조인을 사용해야하는 상황에 대해서 아직 감이 잘 잡히지 않습니다.강사님께서 조인을 선택해서 사용하실때 기준이 있을까요?? left join을 할시, 기준이 되는 테이블(부모 테이블) 붙이는 테이블(자식 테이블)로 이해를 했습니다. 부모테이블의 경우 집합레벨 1, 자식테이블 집합레벨 M으로 이해하는게 맞을까요??
-
미해결데이터 분석 SQL Fundamentals
배치에서 full outer join을 쓴다고 하셨는데 예시를 알 수 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 배치에서 full outer join을 쓴다고 하셨는데 예시를 알 수 있을까요?배치에서 쓰인다는게 잘 와닿지가 않습니다.
-
미해결데이터 분석 SQL Fundamentals
Madrid에 살고 있는 고객이 주문한 주문 정보를 구할것. 실습 질문드립니다
안녕하세요 해당 강의 2분 50초 정도에서 궁금한 것이 있습니다. 고객이 한 번도 주문을 하지 않은 경우에도 고객정보는 조회가 되어야하기 때문에 left outer join을 쓰는 이유는 이해가 되는데요.그 다음 주문접수 직원정보를 구해야 할 때 left join을 하는 부분이 이해가 되지 않습니다. 저는 join key를 b와 c 테이블에 대해서 하니까 b와 c간의 join으로 생각이 되어서 inner join을 걸었었는데요. 이건 사실 customers와 employees 간의 outer join이니까 left outer join을 써야하는걸까요?
-
미해결프론트 개발자를 위한 백엔드 101 (NestJS, TypeORM)
SQL Sheell
SQL Sheell 깜빡 열렸다가 꺼지는데 postgresql-18.0-2-windows-x64 설치 해야 되나요?
-
미해결[C#/.NET 8.0]어서와, WinForm은 처음이지?
npgDBserver 말고 windows workbench는 없나요? ㅠㅠ
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!NPGDB_server를 사용하는거같은데 혹시 windows workbench를 사용해도 다름이 없을까요? ㅠㅠ 혹시 된다면 그거관련된 강의도 가전으로 기재해주셨으면 너무나 감사할거같은데 ㅠㅠ 무리일까요?ㅠㅠ
-
미해결데이터 분석 SQL Fundamentals
rollup시 null값 매출 라벨링
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.selectcoalesce(to_char(b.order_date, 'yyyy'), '총매출') asyear, coalesce(to_char(b.order_date, 'mm'), '연매출') asmonth, coalesce(to_char(b.order_date, 'dd'), '월매출') asday, sum(a.amount) assum_amountfromnw.order_itemsajoinnw.ordersbona.order_id = b.order_idgroupbyrollup(to_char(b.order_date, 'yyyy'), to_char(b.order_date, 'mm'), to_char(b.order_date, 'dd'))orderby1, 2, 3;case when 안쓰고 coalesce 해도 괜찮을것 같아요!
-
해결됨따라하며 배우는 NestJS
회원가입 기능 구현 버전 변경에 따른 코드수정(해당 사항은 업데이트 예정이 없나요?)
Custom Repository 부분에서 에러가 나서 해결 하긴 하였으나 맞는 과정인지는 잘 몰라 문의드립니다.강의에서 사용하는 @EntityRepository방식은 구버전(0.2.x) 방식으로 최신버전에서는 제거되었습니다. 강의 코드를 그대로 따라하면 ... is not a function같은 에러가 발생합니다.그래서user.repository.ts, auth.modules.ts 수정, auth.service.ts를 수정 1. user.repository.ts 수정 1. user.repository.ts 수정 Repository를 일반 서비스로 만들기 위한 핵심 작업입니다. 수정 내용: @EntityRepository(User) 데코레이터를 삭제하고 @Injectable()을 추가했습니다. Repository 클래스를 초기화하기 위해 constructor (생성자)를 추가하고, 그 안에서 super()를 호출했습니다.// src/auth/user.repository.ts import { Injectable } from '@nestjs/common'; import { DataSource, Repository } from 'typeorm'; import { User } from './user.entity'; // ... @Injectable() // ✅ 변경 export class UserRepository extends Repository<User> { // ✅ 생성자 추가 constructor(private dataSource: DataSource) { super(User, dataSource.createEntityManager()); } async createUser(/* ... */): Promise<void> { // ... } }2. auth.service.ts 수정-> providers 배열에 UserRepository를 추가했습니다.이유: providers 배열에 등록해야만 AuthModule이 "아, UserRepository라는 서비스를 모듈로 포함시켰습니다.// src/auth/auth.module.ts import { UserRepository } from './user.repository'; // ... @Module({ imports: [TypeOrmModule.forFeature([User])], controllers: [AuthController], providers: [ AuthService, UserRepository, // ✅ UserRepository를 providers에 등록 ], }) export class AuthModule {}3.auth.service.ts 수정> 서비스에서 Repository를 주입받는 방식을 변경합니다.수정 내용: @InjectRepository(User) 데코레이터를 삭제하고, 생성자에서 UserRepository를 직접 타입으로 선언하여 주입받습니다.이유: UserRepository는 이제 마법 같은 존재가 아닌 일반 서비스이므로, 다른 서비스를 주입받을 때와 똑같이 클래스 이름만으로 간단하게 주입받을수 있습니다.// src/auth/auth.service.ts import { Injectable } from '@nestjs/common'; import { UserRepository } from './user.repository'; // 🗑️ import { InjectRepository } from '@nestjs/typeorm'; <- 삭제 @Injectable() export class AuthService { constructor( // 🗑️ @InjectRepository(User) <- 삭제 private userRepository: UserRepository, // ✅ 직접 주입 ) {} async signUp(/* ... */): Promise<void> { return this.userRepository.createUser(/* ... */); } }일단 이런식으로 수정했는데 이 과정이 맞는지는 잘 모르겠습니다! 강사님이나 따로 혹시 올라와 있는 코드가 있다면 참고해보겠습니다!
-
미해결프론트 개발자를 위한 백엔드 101 (NestJS, TypeORM)
TypeORM 마이그레이션
우선 typeorm.ts, app.modules.ts 두 파일 코드 복사 붙여넣기 하면app.modules.ts 의TypeOrmModule.forRootAsync({ inject: [ConfigService], useFactory: async (configService: ConfigService) => configService.get('typeorm'), }),useFactory에서 린트에러가 발생합니다.configService.get('typeorm')의 타입이 undefined 일 수도 있어서 에러가 발생하는데 타입 지정해서 서버 실행하면 일단 실행은 됩니다.문제는 이 다음에package.json에 마이그레이션 스크립트 추가 후서버 실행하고 터미널 창 새로 열어서 npm run migration:generate --name=Initial_Migration 명령어 실행하면 migration 관련 파일은 잘 생성이됩니다.내용도 잘 들어가있어요 posts 테이블 만들고 index 들 설정하는 쿼리들 다 제대로 적혀있습니다만 npm run migration:run 명령어 실행시 migrations 테이블은 생성되는데 안에 레코드가 하나도 없고, posts 테이블은 아예 생성이 안됩니다.
-
미해결다양한 사례로 익히는 SQL 데이터 분석
없는강의요청해도됩니까,,
데이터모델링,,쿼리튜닝,,따로따로 심도있게 추후계획있는지 궁금합니다,,인프런에선 몇년전부터 게속 기대하고 찾아보는데 하나도 없네요,,심도있는강의가없어요,,철민님이 유일하게 하실수 있을것같아 조심스레 한번물어봅니다(다른사람 대체불가)
-
미해결데이터 분석 SQL Fundamentals
10. 조인 실습 - 02 관련 질문
안녕하세요.강의를 들으면서 잘 이해가 되지 않는 부분이 있어 질문 드립니다.질문 드리고자 하는 부분은 "직원명 SMITH의 과거 소속 부서 정보를 구할 것"이라는 문제의 쿼리문인데요. 우선 제가 작성한 쿼리문은 아래와 같습니다.selecta.ename, a.empno, b.deptno, c.dname, b.fromdate, b.todatefromhr.empajoinhr.emp_dept_histbona.empno = b.empnojoinhr.deptcona.deptno = c.deptnowherea.ename = 'SMITH'; 그리고 강사님께서 작성하신 쿼리문은 아래와 같구요.selecta.ename, a.empno, b.deptno, c.dname, b.fromdate, b.todatefromhr.empajoinhr.emp_dept_histbona.empno = b.empnojoinhr.deptconb.deptno = c.deptnowherea.ename = 'SMITH'; 두 쿼리문의 차이는 join hr.dept c on 부분에서 "a.deptno = c.deptno"과 "b.deptno = c.deptno"입니다. 제 생각에는 위 두 쿼리문이 같은 결과를 뱉어야 할 것 같은데.. 아래 쿼리문 결과를 보면 dname 부분이 다르게 출력됩니다. 1) 제가 작성한 쿼리문 결과 2) 강사님이 작성하신 쿼리문 결과 제 짧은 지식으로는 두 결과가 동일해야 할 것 같은데, 제가 잘못 생각한 부분이 있다면 말씀 부탁드립니다 ㅠ
-
해결됨데이터 분석 SQL Fundamentals
조인실습03 - join의 pk-fk join
안녕하세요 조인실습03 - 8:25에서 join 관련 질문입니다. [ 이해한 내용 ]- shippers의 shipper_id - orders의 ship_via컬럼명만 다를 뿐, shipper_id가 pk컬럼인데,orders에서 fk로 만들 때 ship_via로 만든 것이다.그래서 두 컬럼이 조인된다. [ 궁금한 사항 ]두 컬럼이 PK - FK 관계라는 판단 근거가 어떻게 되나요?Dbeaver에서 이를 쉽게 확인할 수 있나요?제가 수강한 진도까지는 이러한 내용이 나오지 않고ERD를 봐도 모르겠어서 질문드립니다.