Thumbnail
얼리버드 할인 중
개발 · 프로그래밍 데이터베이스
SW 개발자를 위한 성능 좋은 쿼리 작성법
(4.8)
4개의 수강평 ∙ 55명의 수강생
30% 132,000원 92,400원

월 18,480원

5개월 할부 시
지식공유자 : 김정선SQL
총 33개 수업˙총 6시간 1분
수강기한: 6개월
수료증 발급 강의
입문초급중급이상 대상
폴더에 추가 92 공유
중급자를 위해 준비한
[데이터베이스] 강의입니다.

SQL Server 전문가로부터 SQL 개발 단계에서 성능을 고려한 쿼리 작성법을 배우는 과정입니다. 쿼리 성능 요건을 만족하기 위한 기본 사항들을 실무 사례와 함께 습득할 수 있습니다.

✍️
이런 걸
배워요!
성능 좋은 쿼리를 작성하기 위한 기본 규칙들과 금기 사항들 학습
품질 좋은 쿼리 작성을 위한 기본 지식들
공통적인 실무 사례들의 간접적인 경험

쿼리 작성이 성능과 품질을 가른다!
실무 중심으로 탄탄하게 익혀보세요. 👨‍💻

잘못 작성된 쿼리 몇 줄이 
성능 문제를 일으킨다고요?

성능 측면에서 잘못 작성된 쿼리는 DB 성능과 서비스 성능 저하를 유발하는 주요 원인이 됩니다. 개발 초기에 결과 위주로 작성된 쿼리나 SQL Server에 적합하지 않은 구현차후 데이터 증가와 함께 성능 문제를 유발하는 것이 일반적이죠.

그래서, 품질 좋은 쿼리 작성이 중요합니다!

  • 성능 좋은 쿼리를 작성하기 위한 기본 규칙들과 금기 사항들
  • 품질 좋은 쿼리 작성을 위한 기본 지식들
  • 공통적인 실무 사례들의 간접적인 경험

SW 개발자로서 프로젝트나 솔루션 등의 개발 시에 어떤 유형의 쿼리나 구현이 차후 성능 문제를 유발할 수 있는지를 이해하고 실무에 바로 적용할 수 있도록 관련 지식과 경험을 공유하고 싶습니다.


이런 분들께 
추천합니다.

SQL Server 
초중급 개발자

SQL
쿼리 사용자

IT 프로젝트에
주로 참여하는 개발자

쿼리 성능에
관심 있는 초~
중급 사용자

쿼리 최적화를
고민하는
솔루션 개발자

쿼리 작성
표준이 필요한
관리자

쿼리 작성법, 꼭 알아야 하는 세 가지 이유! 

  • 1️⃣ 실무에서 쿼리 구현 및 작성 시에 성능을 고려해 더 좋은 쿼리를 사용할 수 있습니다.
  • 2️⃣ 성능 이슈가 예상되는 쿼리에 대해 DB 담당자나 현업과 협의할 수 있습니다.
  • 3️⃣ 쿼리 튜닝을 학습하는데 도움이 됩니다.

더 좋은 품질
더 나은 유지 보수를 위해.

인덱스와 쿼리 튜닝을 위해서 개발 및 구현 단계에서부터 기본적으로 해주어야 할 규칙, 금기사항 및 작성법이 있습니다.

본 교육에서는 개발자가 쿼리 구현 단계에서 고려해야 할 여러 가지 규칙들과 권장 사항들을 배울 수 있으며 이로 인해 더 좋은 품질유지 보수에 용이한 쿼리를 구현하는 데 도움을 얻을 수 있습니다. 특히 SQL Server를 전문적으로 오랫동안 컨설팅 및 강의 경험을 가진 지식공유자가 각 주제별로 실무에서 공통적으로 나타나는 예제들을 샘플로 사용하므로 교육 후 실무 활용에 직접적인 도움이 됩니다.

SQL Server
사용 초보인데
수강을 해도 될까요?

SQL 기초는 알고 있어야 내용을 이해하고 따라하는데 수월하실 겁니다, 혹시 중간에 잘 모르는 내용이 있다면 해당 구문/명령/문법에 대해서 학습을 하시고 다시 들으시면 이해에 도움이 되실 겁니다. 혹은 Q/A를 이용하셔도 되겠죠 😊

MySQL,
PostgreSQL 등
다른 DBMS
개발할 때도
적용될 수 있을까요?

DBMS마다 인덱스, 통계정보, 잠금, 쿼리 최적화 등의 아키텍처에 세밀한 차이가 있어 SQL Server를 기준으로 한 본 강의 내용이 100% 동일하게 적용되지는 않습니다. 그러나 상당히 많은 내용들이 다른 DBMS에서도 적용된다고 말씀드릴 수 있습니다.

SQL Server
버전에 따라서도
차이가 있을까요?

거의 대부분의 내용들은 현재 주로 사용하는 버전들을 기준으로 거의 차이가 없습니다. 일부 차이가 있는 부분은 강의에서 설명드립니다.


다음 내용을 
학습합니다.

1. 쿼리 작성 기본 사항

  • 운영 DB에서 SSMS나 개발 도구 쓸 때 조심하세요~
  • WHERE절과 JOIN절의 작성 순서는 성능에 영향을 미칠까요?
  • 날짜시간 리터럴이나 문자열 리터럴 및 검색은 어떻게 하는 것이 좋을까요?
  • 조인 조건과 검색 조건은 어떻게 구분해서 적용할까요?
  • 내가 지금까지 사용한 쿼리가 혹시 “의미 오류”에 해당될까?

2. 쿼리 금기 사항

  • 성능 상 좋은 조건식은 어떤 형식으로 작성해야 할까요?
  • 쿼리 금기사항이 있다? 혹시 나도 습관적으로?
  • 로컬 변수, 사용자 정의 함수 WHERE 절에 쓰면 위험하다고?

3. 더 좋은 쿼리 작성하기

  • IN과 BETWEEN 누가 빠른가요? 언제 누구를 쓰는게 좋을까?
  • 집계함수의 주인공은 NULL
  • UNION(합집합), ALL 쓸까요? 뺄까요?
  • UPDATE하고 또 SELECT? 그냥 한 방에
  • SQL Server의 새로운 함수와 구문들 짱 좋아요^^
  • 조인 구문은 어떻게 작성할까요? 불필요한 OUTER JOIN이 성능 문제를?
  • Subquery는 무조건 느리다구요? 잘 쓰면 약이에요
  • 쿼리 튜닝 핵심 기능, 파생테이블/CTE/APPLY 맛보기
  • CASE 안에 SELECT 문? 아니 거꾸로 쓰세요
  • 차집합 쿼리 필요하세요? NOT IN은 특히 주의하세요
  • 재귀호출 쿼리, CTE 잘 활용하세요
  • 쿼리 힌트 쓴다구요? 조심하세요~
  • SQL Server에서 쿼리는 잠금 이슈를 꼭 챙기세요~

4. 커서, 뷰, 사용자 정의 함수 구현 시 고려사항

  • Cursor? 가능한 SQL로 구현하세요, 그래도 필요하다면…
  • STRING_AGG() 함수 모르셨다구요? 깜짝 놀라실걸요
  • 가제트 만능 팔! 아니 만능 View? 조심하세요~
  • 사용자 정의 함수와 대량 검색이 만나면 많~이 무거워져요
  • FORMAT() 함수? 대량 검색에서 조심 조심
  • (부록) .NET EF, EF Core와 같은 ORM 쓰시나요? 조언드립니다

안녕하세요! 
지식공유자 김정선입니다.

이력 사항

  • ㈜씨퀄로(www.sqlroad.com ) 대표컨설턴트/이사 (2005년부터)
    • SQL Server 컨설팅, 기술지원, 강의, 솔루션 개발
  • SQLBigEyes (SQL Server 성능 모니터링 솔루션, www.sqlbigeyes.com ) 개발   
    • SQLBigEyes (SQL Server 성능 모니터링 솔루션, www.sqlbigeyes.com ) 개발
  • Microsoft Data Platform MVP
    • 2002년부터 (현재 2021년 기준) 20년간 수상, 2008년 MVP 공로상 수상

자격 및 인증

  • MCT, Azure DBA, MCITP 외 다수

강의 활동 (1999년부터)  

외부 활동

  • SQL Server MVP Deep Dives Vol 2(Manning Pubs) 공동 저자 참여
  • 김정선의 SQL Server 컨설팅 이야기 시즌 11년간 진행 중
  • SQL Unplugged 세미나 5년간 진행
  • SQL PASS Korea Chapter Leader
  • Microsoft Ignite, BITEC, Tech Camp, MVP Camp, TechEd, MSDN 등 Speaker 참여

자주 묻는 질문을 
확인해보세요.

Q. 비전공자도 들을 수 있는 강의인가요?

SQL의 기초나 사용 경험이 있다면 들을 수 있습니다. 조금 부족하더라도 수강 중에 필요한 기초를 병행 학습하시면 될 겁니다.

Q. 강의를 듣기 전 준비해야 할 것이 있나요?

SQL Server에서 제공하는 SSMS 프로그램이나 혹은 쿼리 사용이 가능한 유사 프로그램을 설치해 두시고 제공되는 데모용 DB와 SQL 스크립트를 미리 다운로드 해 두시면 됩니다. 데모 DB 구성은 교육에서 설명드립니다.

Q. 수강 관련 참고 사항(갖춰야 할 환경, 기타 유의사항 등)이 있나요?

데모 및 과제 수행을 위해 SQL Server가 필요합니다. 가능하면 최신 버전(2021년 현재 기준 2019)이 좋고 이전 버전도 괜찮습니다.


지식공유자가 알려주는
강의 수강 꿀팁!
🎓
이런 분들께
추천드려요!
SQL Server 초중급 개발자
솔루션 개발자
IT 프로젝트에 주로 참여하는 개발자
쿼리 성능에 관심 있는 초중급 개발자
쿼리 작성 표준이 필요한 관리자
📚
선수 지식,
필요한가요?
SQL 기초

안녕하세요
김정선SQL 입니다.
김정선SQL의 썸네일

(주)씨퀄로 대표컨설턴트/이사, SQLBigEyes 솔루션 개발자
Microsoft Data Platform MVP (Award, 2002 이후~현재)
MCT, Azure DBA, MCITP, MCDBA
SQL PASS Korea Chapter Leader

Email: jskim@sqlroad.com
Homepage: www.visualdb.net
Youtube: 김정선 SQL TV
강의: 부산정보산업진흥원@부산, 스킬서포트교육센터@서울

커리큘럼 총 33 개 ˙ 6시간 1분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 과정 소개
과정 소개 미리보기 12:16
데모 DB 생성 및 스크립트 소개 04:26
섹션 1. 기본 고려사항
공통적인 성능/관리 이슈, SQL 금기사항 위반 결과 등 미리보기 13:40
소개 04:47
실행계획-인덱스 사용여부 판단, IO 량 확인하기 미리보기 15:59
개발 및 관리 도구 사용 주의, ANSI ISO 표준 11:16
WHERE 절과 JOIN 절 작성 순서, 스키마 이름 지정 15:27
날짜시간 상수 이해, char vs. varchar 이해, 조건절 명확한 괄호 14:45
조인조건 vs. 검색조건, 임의 쿼리 식별자 달기 12:08
의미 오류는 잠재적인 성능 이슈 19:04
섹션 2. 쿼리 금기사항
소개 미리보기 04:32
SARG 란? 05:58
Non-SARG, 불필요한 열/행 참조, Index 열에 부정형 사용 주의 16:17
Non-SARG, Index 열 값 변형 11:52
Non-SARG, Index 열에 LIKE 05:30
Non-SARG, 열 값 비교 사례 05:45
조건절 상수화 이슈(로컬변수, 사용자정의함수), 테이블 변수 최적화 이슈 17:27
섹션 3. 더 좋은 쿼리 작성하기
소개 03:09
IN vs. BETWEEN, TOP(N) 08:43
집계함수와 GROUP BY, UNION vs. UNION ALL 15:32
UPDATE 결과 열 값 반환, DML 결과 행 반환, 새로운 구문/함수 활용 08:01
OLTP용 JOIN 쿼리, 조인 열 변형 이슈, 불필요한 OUTER JOIN 23:21
언제 Subquery를 사용할 것인가? 09:47
파생테이블, CTE, APPLY 활용, CASE 내부 Subquery 주의 12:22
차집합 NOT IN, CTE 재귀호출 활용, 쿼리 힌트 사용 주의 07:45
UPDATE SET 절 불필요한 열 참조, 잠금 차단 회피하기 15:18
(부록)Demo-SELECT 쿼리 잠금 차단 회피 09:43
섹션 4. 커서, 뷰, 사용자 정의 함수 구현
소개 05:11
Cursor, 꼭 써야한다면 09:58
만능 View 위험, 과다 중첩 View, View Non-SARG 09:54
User Defined Function 성능 문제 이해와 구현, FORMAT() 부하 22:26
마무리 05:05
(부록)ORM 사용 시 쿼리 점검 04:09
강의 게시일 : 2021년 12월 10일 (마지막 업데이트일 : 2021년 12월 10일)
수강평 총 4개
수강생분들이 직접 작성하신 수강평입니다. 수강평을 작성 시 300잎이 적립됩니다.
4.8
4개의 수강평
5점
4점
3점
2점
1점
VIEW 좋아요 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
dreamania thumbnail
너무 좋은 강의 감사합니다^^ 이 강의만 충분히 이해하면 성능이슈 쿼리의 80%이상은 사라질 거 같네요!!!
2021-12-22
지식공유자김정선SQL
좋은 평가에 감사드립니다~ :D
2021-12-23
mhryu thumbnail
잘봤습니다.
2021-12-17
지식공유자김정선SQL
수강평 고맙습니다~ :D
2021-12-17
paenjtentia thumbnail
강의 내용은 매우 좋으나 수강 기한이 짧고 가격이 비쌉니다
2022-01-21
지식공유자김정선SQL
안녕하세요 paenjtentia님, 수강평 남겨주셔서 고맙습니다. 수강 기한 늘리는 부분은 계속 고민 중입니다, 긍정적으로 검토하겠습니다. 김정선 드림
2022-01-21
HJ Kim (WILL) thumbnail
쿼리에 대한 이해도의 폭이 넓어지는 것 같습니다. 좋은 강의 감사드립니다. 추후에는 튜닝에 대해서도 들어보고 싶네요~^^
2022-01-03
지식공유자김정선SQL
도움이 되었다니 다행입니다, 좋은 평가 고맙습니다 차후 쿼리 튜닝 강의 들으러 오세요, 강의 일정은 강의 소식이나 제 홈페이지 등으로 공유하겠습니다 :D
2022-01-03
얼리버드 할인 중
30% 132,000원 92,400원

월 18,480원

5개월 할부 시
폴더에 추가 92 공유
지식공유자 : 김정선SQL
총 33개 수업˙총 6시간 1분
수강기한: 6개월
수료증 발급 강의
입문초급중급이상 대상
수강 전 궁금한 점이 있나요?
문의하기
문의
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의를
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스