묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨데이터 분석 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를 봐도 모르겠어서 질문드립니다.
-
미해결데이터 분석 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를 봐도 모르겠어서 질문드립니다.
-
미해결[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
강의 자료 다운로드 관
[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL)부트캠프 [입문부터 활용까지] 강의 결제하여 수강 시작했는데요!강의자료는 연습문제만 있는 거고 강의 중에 활용하시는 파일은 따로 없는 게 맞는건가요?
-
해결됨김영한의 실전 데이터베이스 - 기본편
셀프조인 상사 출력
employee_id와 manager_id를 사용해서 셀프조인 하는 과정에서자신의 상사를 모두 표시하고 싶다는 생각이 들었습니다. SELECT a.employee_id, a.name, b.employee_id, b.name, c.employee_id, c.name, d.employee_id, d.name, e.employee_id, e.name FROM employees a left join employees b on a.manager_id = b.employee_id left join employees c on b.manager_id = c.employee_id left join employees d on c.manager_id = d.employee_id left join employees e on d.manager_id = e.employee_id 이와같이 직원 코드가 있고 상사 코드가 있는 경우 자기로부터 가장 높은 상사까지 한 행에 다 출력하고 싶은 경우에는 어떤 방법이 최선인지 알고 싶습니다.지금은 단순히 데이터 개수가 적기 때문에 몇번의 조인으로 해결되었지만 실무에서 데이터 개수가 많다고 할때 이와같이 구하려면 어떻게 구해야하는지 궁금합니다. 즉 위 코드처럼 여러번 조인을 쓰는게 아니라 원하는 결과를 얻을 때 까지 자동으로 반복시킬 방법이 있는지 궁금합니다.
-
미해결JPA (ORM) 개발자를 위한 고성능 SQL (High-Performance SQL)
77. Transactions(5) - Skip Locked-영상 재생 문제
5:48초 부터 동그라미만 나오고 이후 부터 안나옵니다. 확인좀 부탁 드려요.
-
미해결[리뉴얼] 처음하는 MongoDB(몽고DB) 와 NoSQL(빅데이터) 데이터베이스 부트캠프 [입문부터 활용까지] (업데이트)
강의9분 조건연산자 관련 질문입니다
db.users.find({age: {$lt:30, $gt:40}})안녕하세요강의 9분쯤 사용하신 이 구문이 작동되지 않아서 ai에게 물어보니 틀린 문법이라고 $or 를 사용하라고 합니다.그런데 선생님 화면에는 잘 출력이 되어서 여쭤봅니다.어떤게 맞는건가요?
-
미해결김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
키워드 리스트 자동완성 관련
안녕하세요 강사님,혹시 mac에서 키워드 리스트가 계속 잘려서 보이지 않는 이유는 뭔지 여쭤보고 싶습니다.. 재설치도 해봤지만 안되네요..
-
해결됨김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
WHERE절 사용에 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요쿼리를 작성하다 SELECT에 서브쿼리, 함수, 산술연산, 문자열 결합, CASE, DECODE 등 여러가지 작업을 진행하게 됩니다.이 요소를 where절에 사용하려면 select 절에 입력한 내용을 그대로 입력해야 합니다. 이런 경우 저는 쿼리를 한번 감 싸서 where절에서 별칭을 사용해서 처리하는 방식으로 많이 작성하고 있습니다. 이런 방식이 안티패턴인지, 이런 방식으로 계속 작성해도 되는지 궁금합니다. SELECT customer_name, total_purchase FROM( SELECT customer_name, SUM(price * quantity) AS total_purchase FROM order_stat GROUP BY customer_name ) A WHERE A.total_purchase >= 400000;이 케이스는 HAVING로 해결하면 되는 문제지만 이와 별개로(GROUP BY 존재여부 상관없이) 기존 SQL을 새로운 SELECT ~~ FROM (기존SQL) WHERE (별칭을 사용해서 제어) 이런 방식으로 사용해도 괜찮은 건지 궁금합니다.
-
미해결김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
mysql 버전
[질문 내용]8.0.42버전 이상 설치하라고 하셨는데 하필 부트캠프에서 했던 프로젝트에서 8.0.41버전을 사용했어요업그레이드를 해도 41버전으로 했던 프로젝트에 지장이 없을까요?
-
미해결대규모 시스템 설계 Part 1
레디스(중앙 상태 관리 서버)에서 동시성 처리 하는 방식
동시성 제어는 분산락원자적 연산방식으로 해결한다고 설명해주셨는데,레디스 분산락의 경우, 락을 획득하려는 클라이언트가 Redis의 Set 명령어를 사용하게 되는데, 이때 NX(Not eXists) 옵션을 통해 키가 존재하지 않을 때만 값을 설정하도록 하기 때문에, 이 연산은 원자적으로 수행된다고 합니다.결론적으로 1, 2안 모두 원자적 연산을 의미하는것이라고 생각이 들어 헷갈리는데요..!혹시 어떤 의도로 말씀해주신건지 설명해주실 수 있나요?그리고 Redis를 예시로 들었을때, 레디스는 싱글 스레드 동작 방식이라서, 동시성 문제가 제어 된다고 하는데, 이 동시성 문제가 실제로 발생하는 경우는 어떻게 되는건지, redis 서버가 다중 노드일 때 발생하는건지 궁금합니다.
-
해결됨김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
work bench 말고 data grip으로 강의를 진행해도 될까요?
기존에 사용하던 database 도구를 data grip을 사용하고 있습니다.선생님의 강의를 따라가면서 data grip을 사용하면서 강의를 진행해도 문제가 없을지요?혹여나 강의중에 work bench의 상세기능을 설명하시면서 강의를 진행하시면 work bench로 따라가고 아니라면 data grip으로 따라가려 합니다.
-
미해결다양한 사례로 익히는 SQL 데이터 분석
아래와 동일한 질문에 대한 추가질문입니다
selectpage_path, count(*) ashits_cnt,count(distincta.sess_id) asnet_cntfromga_sessajoinga_sess_hitsbona.sess_id = b.sess_idwherehit_type = 'PAGE'groupbypage_pathorderby2desc 저도 아래 질문글처럼 같은 방식으로 쿼리를 작성했습니다. 이전섹션인 일별 페이지 조회수와 양식이 유사해서 저한테 더 익숙했기 때문입니다 그런데 수업에서 사용한 쿼리가 제 쿼리보다 월등히 처리속도가 빠르더라고요(3s vs 4.7s). SQL숙련도가 올라가면 튜닝이라는걸 통해 처리속도를 최적화해야 한다고 들었습니다. 나중을 대비해서 익숙한 제 쿼리보다는 처리속도가 빠른 선생님 코드처럼 코드작성 습관을 바꾸는게 좋을까요?
-
미해결김영한의 실전 데이터베이스 - 기본편
SELECT 절 상관 서브쿼리 성능과 가독성.. 질문 드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)1. 2. 3. 예.[질문 내용]SELECT 절에서 상관 서브쿼리를 사용하는 것에 대해, 완전히 다른 테이블에서 간단한 정보 하나만 조회할 때 적재적소에 사용하면 괜찮다고 하셨는데상황저희 회사에서 사용하는 쿼리들을 보면, SELECT 절에서 상관 서브쿼리를 활용해 다른 테이블에서 간단한 정보를 조회하는 경우가 많습니다.예를 들어, 작성자, 요청자, 접수자 각각에 대해 이름과 부서명을 조회할 때, 각 항목마다 서브쿼리가 사용됩니다.작성자 이름: (SELECT name FROM EMP WHERE emp_id = main.writer_id)작성자 부서: (SELECT dept_name FROM DEPT WHERE dept_id = main.writer_dept_id)요청자 이름, 접수자 이름 등도 동일한 방식질문이렇게 PK 기준으로 조건을 걸고 조회하는 서브쿼리가 여러개 들어가도 성능상 괜찮을까요?조인으로 처리하면 조인 테이블이 많아져 쿼리가 복잡해질 것 같은데. 이럴 경우 서브쿼리 방식이 더 적절한가요?만약 이 방식이 성능상 좋지 않다면, 보다 나은 방법이나 현실적인 대안이 있을까요?
-
미해결김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
자바 강의 듣고있는데
병행해서 할까요?아니면 자바 강의를 완강하고 들을까요?
-
미해결김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
오라클 DB쓰는데 오라클DB는 안나올까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 영한님자바강의부터 지금까지 듣고있는 교육생입니다다름이아니라 디비강의도 해준시다고 하셔서 기댄마음으르 들어왔었는데 디비언어가 MySql이여서 혹시 오라클 DB에 대해서도 강의계획이 있으실까요?
-
미해결견고한 결제 시스템 구축
결제 이후 404 Error 발생
토스페이 결제 후 아래 사진과 같은 404에러가 발생합니다.PaymentController의 @RequestMapping("/v1/toss")를 주석 처리 후 실행하면 결제가 정상적으로 이루어집니다. 강의를 잘 따라갔다고 생각했는데 어디서 문제가 발생했을지 알 수 있을까요?Html파일 경로는 "src\main\resources\templates" 입니다.
-
미해결graphRAG - Neo4J로 구현하는 지식 그래프 기반 RAG 시스템 (feat. LangChain)
2강에서 Aura에 파이썬으로 접속 안 됩니다.
test.py 작성 시 AuraDB에 접속이 안 되서 막혀 있습니다. 이전에도 질문해 주신 분이 계셨던 것 같은데요..env 파일에 URI, USERNAME, PASSWORD 정확히 썼고요(browser.neo4j.io 접속해서 위 정보 복사해서 붙이니 잘 되는 것 확인했습니다.)분명 제 PC 문제일 것 같은데, 유사 해결사례가 있으시면 조언부탁드립니다. 수업을 시작할 수가 없네요. ㅠㅠ(방화벽 off 시도, PC 재부팅 시도 ) <code>import os from dotenv import load_dotenv from langchain_neo4j import Neo4jGraph load_dotenv() graph = Neo4jGraph( url=os.getenv("NEO4J_URI"), username=os.getenv("NEO4J_USERNAME"), password=os.getenv("NEO4J_PASSWORD"), ) def main(): # 간단한 테스트 쿼리 result = graph.query("MATCH (n) RETURN count(n) as node_count") print(f"Neo4j 데이터베이스 내 노드 수: {result[0]['node_count']}") if __name__ == "__main__": main() <Error>Unable to retrieve routing information Traceback (most recent call last): File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\langchain_neo4j\graphs\neo4j_graph.py", line 153, in __init__ self._driver.verify_connectivity() File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\driver.py", line 1090, in verify_connectivity self._get_server_info(session_config) File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\driver.py", line 1305, in _get_server_info return session._get_server_info() ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\work\session.py", line 183, in _get_server_info self._connect( File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\work\session.py", line 136, in _connect super()._connect( File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\work\workspace.py", line 186, in _connect target_db = self._get_routing_target_database( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\work\workspace.py", line 260, in _get_routing_target_database self._pool.update_routing_table( File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\neo4j\_sync\io\_pool.py", line 1025, in update_routing_table raise ServiceUnavailable("Unable to retrieve routing information") neo4j.exceptions.ServiceUnavailable: Unable to retrieve routing information During handling of the above exception, another exception occurred: Traceback (most recent call last): File "c:\VSCODE Scripts\neo4j-project\test.py", line 9, in <module> graph = Neo4jGraph( ^^^^^^^^^^^ File "C:\Users\user-pc\AppData\Local\pypoetry\Cache\virtualenvs\neo4j-project-qp9QAGSV-py3.11\Lib\site-packages\langchain_neo4j\graphs\neo4j_graph.py", line 160, in __init__ raise ValueError( ValueError: Could not connect to Neo4j database. Please ensure that the url is correctㅇㄹ
-
미해결데이터 분석 SQL Fundamentals
(공유)맥, 스키마 import
덤프 파일 다운(.backup)brew install libpq(terminal)echo 'export PATH="/opt/homebrew/opt/libpq/bin:$PATH"' >> ~/.zshrcsource ~/.zshrcln -s /opt/homebrew/opt/libpq/bin ~/'적절한 경로' (파인더에서 참조할 수 있도록 경로 설정, 기존 brew 설치 경로에서는 파인더에서 비하인드 처리되어 이를 찾을 수 없도록 되어있음)Driver Manager > Edit Driver 'PostgreSQL' > Local Client 탭에서 ~/'적절한 경로' 로 선택 스키마 import 완료(최종사진첨부)
-
미해결비전공자의 전공자 따라잡기 - 데이터베이스,SQL
설치오류 질문드립니다.
MySQL 설치 중 설치 오류가 발생하여 로그 첨부드립니다. Beginning configuration step: Writing configuration fileSaving my.ini configuration file...Saved my.ini configuration file.Ended configuration step: Writing configuration fileBeginning configuration step: Updating Windows Firewall rulesAdding a Windows Firewall rule for MySQL80 on port 3306.Attempting to add a Windows Firewall rule with command: netsh.exe advfirewall firewall add rule name="Port 3306" protocol=TCP localport=3306 dir=in action=allow확인됨Successfully added the Windows Firewall rule.Adding a Windows Firewall rule for MySQL80 on port 33060.Attempting to add a Windows Firewall rule with command: netsh.exe advfirewall firewall add rule name="Port 33060" protocol=TCP localport=33060 dir=in action=allow확인됨Successfully added the Windows Firewall rule.Ended configuration step: Updating Windows Firewall rulesBeginning configuration step: Adjusting Windows serviceAttempting to grant the required filesystem permissions to the 'NT AUTHORITY\NetworkService' account.Granted permissions to the data directory.Adding new serviceNew service addedEnded configuration step: Adjusting Windows serviceBeginning configuration step: Initializing database (may take a long time)Attempting to run MySQL Server with --initialize-insecure option...Starting process for MySQL Server 8.0.42...Starting process with command: C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console --initialize-insecure=on --lower-case-table-names=1...C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.42) initializing of server in progress as process 43732mysqld: File '.\媛뺤튂??bin.index' not found (OS errno 2 - No such file or directory)The newly created data directory C:\ProgramData\MySQL\MySQL Server 8.0\Data\ by --initialize is unusable. You can remove it.AbortingC:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.42) MySQL Community Server - GPL.Process for mysqld, with ID 43732, was run successfully and exited with code 1.Failed to start process for MySQL Server 8.0.42.Database initialization failed.Ended configuration step: Initializing database (may take a long time)
-
미해결비전공자도 이해할 수 있는 MySQL 성능 최적화 입문/실전 (SQL 튜닝편)
강의 내용을 블로그에 정리해도 괜찮을까요?
강사님 안녕하세요. 😁강사님의 MySQL 성능 최적화 강의를 블로그에 정리하여 기록하고 싶은데 가능할지 여쭤보고 싶습니다. 강의 자료를 참고하여 제가 이해한대로 정리하고, 저의 실습 화면을 첨부하는 식으로 정리하려 합니다. 또한 출처를 분명히 표기하겠습니다.다만 글의 전체적인 흐름이나 내용이 강의를 기반으로 한 것일거라.. 조심스러워 여쭙습니다. 항상 좋은 강의 제공해 주셔서 진심으로 감사드립니다.