묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
SQL Server Admin & 트러블슈팅 강의도 있으면 좋겠습니다.
유명하신 분의 강의를 들으니 아주 좋네요. SQl Server 의 관리자로서, Advanded Admin 및 트러블슈팅 사례나 조치 방법 같은 것들도 나중에 강의 만들어주시면 좋을 것 같습니다. 저는 기존에는 udemy.com 에서 듣고는 있는데 인프런에서 강의를 만드시면 꼭 수강할 예정입니다.
-
미해결[2024 리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
큰따옴표 질문입니다.
강의 13:23 import pymysql db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='funcoding', db='ecommerce', charset='utf8') cursor = db.cursor() for index in range(10): product_code = 215673140 + index + 1 sql = """INSERT INTO product VALUES( '""" + str(product_code) + """', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """ print (sql) cursor.execute(sql) db.commit() db.close() -------------------------------------- 13:23 에서 '""" + str(product_code) + """', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """ '""" + str(product_code) + """' 이부분에서 str로 이미 문자열이 되었는데 큰따움표 쓰는거랑 작은따움표를 왜 추가하신건지 궁금합니다. 그냥 'str(product_code)' 로 쓰면 안되나요?
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
[섹션 2. 쿼리 금기사항]의[조건절 상수화 이슈]의 데모실행불가 및 결과차이 문의입니다.
안녕하십니까. 강의를 듣고 있는 수강생입니다. 현재 [섹션 2. 쿼리 금기사항]의[조건절 상수화 이슈]의 데모실행 중 [2) Index열 조건에 사용자 정의 함수]를 기동 중에 OPTION 실행이 불가한 문제와 OPTION을 실행하지 않을 시의 실행계획이 다른 문제가 발생하여 궁금해서 연락 드렸습니다. 이하 옵션 실행 불가 화면의 캡쳐입니다. 이하 옵션을 실행하지 않고 쿼리만 실행 했을 시에 발생하는 실행계획 내용입니다. 혹시 해당문제의 발생이유를 알 수 있을지 확인 부탁드립니다. 이상입니다.
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
데모DB와 스크립트파일은 어디에 있을까요?
안녕하세요 데모DB와 스크립트파일이 어디있는지 못찾겠는데 해당 링크나 위치 알 수있을까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
쿼리문 순서 질문
안녕하세요 강사님. 좀 쓸데없는 질문이긴 한데 쿼리문 실행 흐름이 대략 FROM WHERE GROUP BY HAVING SELECT ORDER BY 이런 식으로 실행된다고 배웠습니다. 그런데 SELECT TOP 1 * FROM batting WHERE teamID = 'BOS' ORDER BY HR DESC; --보스턴 팀 소속으로 단일 년도 최다 홈런을 친 사람의 정보 해당 쿼리문에서 ORDER 보다 SELECT가 먼저 실행된다면 아직 홈런 횟수를 내림차순 하기 이전의 테이블에서 최상단의 행을 가져오기 때문에 원래라면 의도하는 결과가 나오지 않는 것이 아닌지 궁금합니다. 감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
단일년도 최다 홈런!!
안녕하십니까 교수님.. 와 이게 안되네요... 최다 홈런친 사람을 파악하는 건데... 직관적으로 명령어를 입력하고 실행을 누르는데 컴퓨터가 불평을 합니다. 어디가 문제일까요? '될듯안될듯 될거 같은 너'입니다. select playerID from batting where (teamID= 'BOS' AND MAX(HR))
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
SELECT *에 관해서
안녕하세요. 복습을 하는 중에 궁금한 것이 있어서 다시 한번 문의 드립니다. 열의 이름을 바꿀때 이런식으로 하잖아요. 그런데 저는 SELECT birthYear AS birth FROM players 모든 열을 본 상태에서 birthYear만 birth로 바꾸고 싶은데요. 이때는 어떻게 하나요 ? - 이런식으로는 안되더라고요.. SELECT *,birthYear AS birth FROM players
-
미해결Oracle SQL 입문자를 위한 강의
더미 데이터 생성파일 현재 수정본 없을까요???
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 더미 데이터 파일을 실행하면 위 사진 같은것도 뜨기도 하고 테이블 생성시 일일히 ' 도 제거해 주어야 하고 영상에서 말씀하셨듯이 디비마다 sql 문이 조금씩 차이가 있다는 말씀에 maria 디비를 경험해 본적도 없고 어디서 오라클과 다른 부분 오류를 수정해야 되는지 현재로서 알수가 없네요 일일히 파일을 수정하고 강의를 시청하는데 무리가 있다 느껴지고 있습니다. 수정본 파일좀 없을까요???
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
검색? 논리적읽기? 횟수
안녕하세요. 뒤늦은 질문일지도 모르지만 일단 질문드려봅니다 ㅜ 1) TestOrders에 NONCLUSTERED INDEX를 하나 만들고 CustomerID = 'QUICK';를 검색할때 하나의 Leaf Page에 QUICK들이 모두 모여있어서 한 페이지만 찾으면되는데, 그렇다고 해도 28개의 QUICK을 찾으려면 최소한 28번은 읽어야 하는게 아닌가요? 오히려 WITH(INDEX(Orders_Index01))를 사용한 경우는 SEEK으로 'QUICK'모음을 찾고 그걸 하나씩 검사하기 때문에 논리적읽기가 30인건 어느정도 이해하겠는데 SCAN으로 한 경우는 왜 20일까요? 2) 예를들어 100개의 데이터중 A라는 데이터가 5개 있고 name으로 검색 가능하다고 했을때 C#의 리스트에서 검색을 할때는 A가 몇개인지는 결국 100개를 다 돌려봐야 하는데 (INDEX를 사용하지 않은)SQL에서는 왜 논리적읽기가 100이 아닌가요? 전체를 순회하는건 스캔1에 포함이 되는건가요?
-
해결됨Oracle SQL 입문자를 위한 강의
dummydata파일 수정본으로 올려주실 수 있나요?
안녕하세요 강사님, 더미데이터파일 수정본으로 새로 올려주실 수 있는지 여쭙고 싶습니다. 오라클db와 문법에 차이가 있는 파일이 그대로 업로드 되어 있는게 당황스러워요. 웬만하면 강의 영상으로 해결하려 했는데 강사님 하시는 걸 보고 똑같이 따라해도 8행부터 6236행까지 쭉 오류가 뜹니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
정리하면서 질문입니다.
강의 잘보고 있습니다. Index 부분이 중요하다고 하셨는데 조금 헷갈리네요;; 1) SELECT * FROM sys.indexes WHERE object_id = object_id('accounts'); 의 결과 중 index_id 가 (0 = HEAP) (1 = CLUSTERED) (2 <= NONCLUSTERED) 인것같고 CLUSTERED INDEX를 사용하면 (0 = HEAP)대신 (1 = CLUSTERED) NON CLUSTERED INDEX라면 (1 = CLUSTERED)대신 (0 = HEAP)가 사용되는 것 같습니다. 2) DBCC IND('GameDB', 'accounts', N); N에 index_id를 넣어주게 되는데 CLUSTERED INDEX를 사용하여 index_id가 1부터 시작하게 되었을때도 0을 넣었을때 실행이 됩니다. 반대로 NON CLUSTERED INDEX일때 1을 넣어도 실행이 되는데 그냥 조회용인가요? 결과에 의미가 있나요? 3) DBCC IND('GameDB', 'accounts', 0); 실행시 첫 행의 의미는 어떤건가요? 4) NON CLUSTERED ± CLUESTERED INDEX Page Type의 [ 1은 Data Type이니까 RID를 통해 Heap Table에서 직접 값을 가져오기 ] [ 2는 Index Type으로 키를.. 값이.. Leaf에 실제 값들이 있고 그 값들의 키의 범위를 루트가 가지고 있다고 보면 될까요? => CLUSTERED에 실제 값이 있고 그 키를 가진 NONCLUSTERED페이지 ] (CLUSTERED가 있다면 모든 NONCLUSTERED는 CLUSTERED를 참조) 5) 그냥 CLUSTERED INDEX는 값들이 키순으로 정렬되어 사용되구요 6) 실제로 사용할때 한 데이터에서 INDEX를 많이 생성해서 사용하나요? 아니면 목적에 맞는 INDEX만 생성해서 사용하게되나요? 인덱스에 클러스터드에 구조까지 이해하려니까 좀 어려웠지만 일단 생각해보고 이해한거 정리하고 하면서 질문드려봅니다ㅜ
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
각 연도별 최고의 홈런왕
을 찾아보는데 SELECT * FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY yearID ORDER BY HR DESC) AS ranking FROM batting ) AS yearTableWHERE ranking = 1ORDER BY yearID DESC; FROM 이후에 AS로 이름을 지어주지 않으니 오류가 나는데 이름이 꼭 필요한가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
데이터가 많을 때 Hash 를 사용?이 이해가 잘 안됩니다
join할 데이터베이스 양쪽 다 데이터가 많다면 Hash도 비용이 많이들어 효율이 낮아지는게 아닌가요? 만약 이럴땐 어떤 조인을 사용해야 할까요? NL을 사용하면 엄청난 비효율일 것 같고 Merge를 사용하기엔 데이터가 너무 많고 이래도 그냥 Hash를 사용하는것이 셋중에서 더 좋은 방법인가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
INDEX - 트리 소소질문
INDEX를 설정해 준다는건.. 데이터가 삽입될때 트리가 적당한 위치에 데이터를 저장하고 [ 트리의 루트에서 '왼오왼왼오'의 방향으로 가면 데이터가 있다. ] 라고 말하는 것과 비슷한가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
NON-CLUSTERED 를 잘 모르겠습니다
1. CLUSTERED 는 영한 사전처럼 순서대로 저장된다고 하셨는데 그러면 DB에 INSERT 하는 순서대로 저장되는건가요? 2. NON-CLUSTERED 를 사용하는 이유르 정확하게 모르겠습니다. accountName을 NON-CLUSTERED INDEX로 만들었는데 보통 닉네임을 정할때 중복없이 생성하게 되는데 이걸 색인으로 만들면 특정 이름을 찾는데에 모든 플레이어들의 이름을 다 비교하는게 아닌가요? 만약 그렇게 되면 색인을 넣든 안넣든 똑같은게 아닌가요? 예를들어서 플레이어를 찾을 때 [찾고싶은 플레이어 이름 = '플레이어 이름'] 이런식으로 찾는다 했을 때 굳이 색인이 필요한지 색인을 안하고 [찾고싶은 플레이어 이름 = '플레이어 이름'] 이런식으로 찾을 수는 없는건가요? 아니면 색인을 넣어줘야지 위처럼 찾는 기능이 가능한건가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
FIRST_VALUE랑 LAST_VALUE할 때 이해안되는 부분이 있어요
LAST_VALUE(salary) //salary의 마지막 값을 추출 OVER ( PARTITION BY playerID //playerid로 묶고 ORDER BY salary DESC //값이 큰 순서대로 정렬 ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) //현재 줄부터 동일한 palyerID의 마지막 줄까지 범위를 지정 이렇게 해서 정렬 순서대로 가장 마지막의 값이 가장 작은 값이니까 가장 작은 값이 뽑혀오는 것까지는 이해되는데요 왜 ORDER BY로 큰 순서대로 정렬했는데 반대로 뒤집어져서 작은 숫자부터 출력되는지 이해가 안가요..
-
해결됨mongoDB 기초부터 실무까지(feat. Node.js)
age가 숫자인지 다시 체크하는 이유
안녕하세요! 좋은 강의 잘 듣고 있습니다. 다름이 아니라 질문이 있어 글을 남깁니다. 이미 User.js에서 age: Number로 설정해두었기 때문에 숫자 외의 것이 들어온다면 catch문에서 제대로 에러 처리가 될 것 같은데, 따로 라우트 내에서 age가 숫자인지 아닌지를 다시 체크하는 이유가 궁금합니다. 감사합니다!
-
미해결[2024 리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
[실전] 크롤링과 데이터베이스 - 크롤링 코드 작성 시작 강의 6분 58초 내용입니다
[실전] 크롤링과 데이터베이스 - 크롤링 코드 작성 시작 강의 6분 58초 내용입니다 에서 실행을 할 때 오류없이 카테고리 ALL 내용은 카테고리만 출력을 하고, 그다음 카테고리들 부터는 카테고리와 서브카테고리를 잘 출력을 합니다. 다른 카테고리들(ex패션의류 신발/잡화 등)은 서브카테고리들(브랜드 여성의류 등)이 있어서 sub_categories = soup.select('div.navi.group ul li > a') 통해서 서브카테고리들을 가져올 수 있는데 ALL (메인)카테고리에서는 서브카테고리에 해당하는 내용이 없어서 크롤링을 할 때 빈값을 가져오고 그러면, 출력을 할 때(sub_category.get_text()을 사용할 때) 빈 값이니까 오류가 나야 하는거 아닌가요?
-
미해결SQL과 구글시트로 시작하는 데이터분석
수업자료다운로드
수업자료를 다운받아서 압축을 풀려고 하는데, 압축풀때 오류가 나는것 같아요. 확인 부탁드려도 될런지요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
UNION에 관하여
UNION강의 4:30초에서 커리어 평균 연봉이 3000000 이상 "이거나" 12월에 태어난 선수를 구할 때 WHERE birthMonth = 12를 추가해주면 된다고 하셨는데 이 경우 커리어 평균 연봉이 3000000 이상 "이고" 12월에 태어난 선수를 구한 것 아닌가요?