BEST
개발 · 프로그래밍

/

데이터베이스

SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법

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

(4.6) 수강평 65개

수강생 1,102명

Thumbnail

중급자를 위해 준비한
[데이터베이스] 강의입니다.

이런 걸
배워요!

  • 성능 좋은 쿼리를 작성하기 위한 기본 규칙들과 금기 사항들 학습

  • 품질 좋은 쿼리 작성을 위한 기본 지식들

  • 공통적인 실무 사례들의 간접적인 경험

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

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

성능 측면에서 잘못 작성된 쿼리는 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년부터 (현재 2023년 기준) 22년간 수상, 2008년 MVP 공로상 수상

자격 및 인증

  • MCT, Azure DBA, MCITP 외 다수

강의 활동 (1999년부터)  

외부 활동

  • SQL Server MVP Deep Dives Vol 2(Manning Pubs) 공동 저자 참여
  • 김정선의 SQL Server 컨설팅 이야기 시즌 13년간 진행 중
  • 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 기초

(주)씨퀄로 대표컨설턴트/이사, 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
강의: 스킬서포트교육센터@서울

커리큘럼

전체

34개 ∙ (6시간 12분)

수업 자료

가 제공되는 강의입니다.

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!