강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Database

Cách viết truy vấn SQL hiệu suất cao cho nhà phát triển phần mềm

Đây là khóa học giúp bạn học cách viết truy vấn có tính đến hiệu năng ở giai đoạn phát triển SQL từ các chuyên gia SQL Server. Bạn có thể nắm vững những điều cơ bản để đáp ứng các yêu cầu về hiệu năng truy vấn cùng với các trường hợp thực tế.

(4.6) 93 đánh giá

1,233 học viên

  • sqlexpert
실무 꿀팁
초보 탈출
SQL
DBMS/RDBMS

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Học các quy tắc cơ bản và những điều cấm kỵ để viết các truy vấn hiệu suất cao.

  • Những kiến thức cơ bản để viết truy vấn chất lượng tốt

  • Kinh nghiệm gián tiếp từ các trường hợp thực tế thường gặp

Viết truy vấn quyết định hiệu suất và chất lượng!
Học kiến ​​thức vững chắc, tập trung vào các kỹ năng thực tế. 👨‍💻

Một vài dòng truy vấn được viết không đúng
Bạn có đang gặp vấn đề về hiệu suất không?

Về mặt hiệu suất, các truy vấn được viết kém là nguyên nhân chính gây ra sự suy giảm hiệu suất của cơ sở dữ liệu và hiệu suất dịch vụ. Các truy vấn được viết ở giai đoạn đầu phát triển theo hướng hướng đến kết quả hoặc các triển khai không phù hợp với SQL Server thường gây ra sự cố về hiệu suất khi dữ liệu tăng lên .

Vì vậy, việc viết các truy vấn chất lượng là rất quan trọng!

  • Các quy tắc cơ bản và điều cấm kỵ khi viết truy vấn hiệu suất
  • Kiến thức cơ bản để viết các truy vấn chất lượng
  • Kinh nghiệm gián tiếp về các trường hợp thực hành phổ biến

Là một nhà phát triển phần mềm, tôi muốn chia sẻ kiến ​​thức và kinh nghiệm của mình để tôi có thể hiểu và áp dụng ngay vào công việc của mình những loại truy vấn hoặc triển khai nào có thể gây ra sự cố về hiệu suất trong tương lai khi phát triển các dự án hoặc giải pháp.


Đối với những người này
Tôi khuyên bạn nên dùng nó.

Máy chủ SQL
Người mới bắt đầu/Nhà phát triển trung cấp

SQL
Truy vấn người dùng

Dành cho các dự án CNTT
Chủ yếu liên quan đến các nhà phát triển

Về hiệu suất truy vấn
Quan tâm đến~
Người dùng trung cấp

Tối ưu hóa truy vấn
Lo lắng về
Nhà phát triển giải pháp

Viết một truy vấn
Cần một tiêu chuẩn
giám đốc

Viết truy vấn: Ba lý do tại sao bạn phải biết!

  • 1️⃣ Trong thực tế, khi triển khai và viết truy vấn, bạn có thể sử dụng truy vấn tốt hơn bằng cách xem xét hiệu suất.
  • 2️⃣ Bạn có thể thảo luận với người quản lý DB hoặc nhân viên thực địa về các truy vấn có thể gây ra sự cố về hiệu suất.
  • 3️⃣ Giúp bạn học cách điều chỉnh truy vấn.

chất lượng tốt hơn ,
Để bảo trì tốt hơn .

Có những quy tắc cơ bản, điều cấm kỵ và phương pháp viết phải tuân theo ngay từ giai đoạn phát triển và triển khai để điều chỉnh chỉ mục và truy vấn.

Trong khóa đào tạo này, các nhà phát triển sẽ tìm hiểu một số quy tắc và khuyến nghị cần cân nhắc trong giai đoạn triển khai truy vấn, giúp họ triển khai các truy vấn có chất lượng tốt hơn và dễ bảo trì hơn. Đặc biệt, các chuyên gia chia sẻ kiến ​​thức có kinh nghiệm tư vấn và giảng dạy lâu năm về SQL Server sử dụng các ví dụ thường gặp trong thực tế làm mẫu cho từng chủ đề, do đó rất hữu ích cho việc sử dụng thực tế sau khi đào tạo.

Máy chủ SQL
Tôi là người mới bắt đầu
Tôi có thể tham gia lớp học này không?

Nếu bạn biết những kiến ​​thức cơ bản về SQL, bạn sẽ dễ hiểu và theo dõi nội dung hơn. Nếu có điều gì bạn không biết, hãy học cú pháp/lệnh/ngữ pháp có liên quan và nghe lại để hiểu rõ hơn. Hoặc bạn có thể sử dụng Q/A 😊

MySQL,
PostgreSQL, v.v.
Với các DBMS khác
Ngay cả khi đang phát triển
Điều này có thể áp dụng được không?

Vì mỗi DBMS đều có những khác biệt nhỏ về kiến ​​trúc, chẳng hạn như chỉ mục, số liệu thống kê, khóa và tối ưu hóa truy vấn, nên nội dung của bài giảng này dựa trên SQL Server có thể không áp dụng được 100%. Tuy nhiên, tôi có thể cho bạn biết rằng nhiều điều tôi đã nói cũng áp dụng được cho các DBMS khác.

Máy chủ SQL
Tùy thuộc vào phiên bản
Có sự khác biệt nào không?

Hầu hết nội dung đều giống với phiên bản hiện đang sử dụng. Bất kỳ sự khác biệt nào cũng sẽ được giải thích trong bài giảng.


Nội dung sau đây
Tôi đang học.

1. Cơ bản về viết truy vấn

  • Hãy cẩn thận khi sử dụng SSMS hoặc các công cụ phát triển trên DB đang hoạt động~
  • Thứ tự viết mệnh đề WHERE và JOIN có ảnh hưởng đến hiệu suất không?
  • Cách tốt nhất để thực hiện dữ liệu datetime hoặc chuỗi ký tự và tìm kiếm là gì?
  • Làm thế nào để phân biệt giữa điều kiện tham gia và điều kiện tìm kiếm?
  • Các truy vấn tôi đã sử dụng cho đến nay có thể là "ngữ nghĩa" không?

2. Chống chỉ định truy vấn

  • Tôi nên viết biểu thức điều kiện theo định dạng nào để có hiệu suất tốt?
  • Có điều cấm kỵ nào khi hỏi không? Có lẽ tôi cũng là người dùng quen thuộc?
  • Có nguy hiểm khi sử dụng biến cục bộ và hàm do người dùng định nghĩa trong mệnh đề WHERE không?

3. Viết các truy vấn tốt hơn

  • TRONG và GIỮA Ai nhanh hơn? Khi nào thì nên sử dụng whom?
  • Ký tự chính của hàm tổng hợp là NULL
  • Tôi nên sử dụng UNION hay ALL? Tôi có nên tháo nó ra không?
  • CẬP NHẬT và CHỌN lần nữa? Chỉ trong một căn phòng
  • Tôi thực sự thích các chức năng và cú pháp mới trong SQL Server^^
  • Tôi phải viết câu lệnh tham gia như thế nào? OUTER JOIN không cần thiết gây ra vấn đề về hiệu suất?
  • Các truy vấn phụ luôn chậm? Nếu bạn sử dụng nó tốt, nó sẽ là thuốc
  • Một số tính năng cốt lõi của việc điều chỉnh truy vấn, bảng dẫn xuất/CTE/APPLY
  • Câu lệnh SELECT bên trong CASE? Không, viết ngược lại
  • Bạn cần một truy vấn về sự khác biệt? Đặc biệt cẩn thận với NOT IN
  • Tận dụng tốt truy vấn đệ quy và CTE
  • Bạn có đang sử dụng gợi ý truy vấn không? Hãy cẩn thận nhé~
  • Trong SQL Server, hãy đảm bảo xử lý các vấn đề về khóa khi thực hiện truy vấn~

4. Những cân nhắc khi triển khai con trỏ, chế độ xem và hàm do người dùng xác định

  • Con trỏ? Triển khai bằng SQL nếu có thể, nhưng nếu cần thiết…
  • Bạn chưa biết về hàm STRING_AGG()? Bạn sẽ ngạc nhiên
  • Cánh tay đa năng của Gadget! Không, Universal View à? Hãy cẩn thận nhé~
  • Khi các chức năng tùy chỉnh và tìm kiếm hàng loạt kết hợp với nhau, mọi thứ trở nên phức tạp hơn rất nhiều.
  • Hàm FORMAT()? Hãy cẩn thận với tìm kiếm hàng loạt
  • (Phụ lục) Bạn có sử dụng ORM như .NET EF hoặc EF Core không? Tôi khuyên bạn

Xin chào!
Đây là người chia sẻ kiến ​​thức Kim Jeong-seon .

Lịch sử

  • Tổng giám đốc/Giám đốc của Sequlo Co., Ltd. (www.sqlroad.com) (từ năm 2005)
    • Tư vấn SQL Server, hỗ trợ kỹ thuật, bài giảng, phát triển giải pháp
  • Phát triển SQLBigEyes (giải pháp giám sát hiệu suất SQL Server, www.sqlbigeyes.com)
    • Phát triển SQLBigEyes (giải pháp giám sát hiệu suất SQL Server, www.sqlbigeyes.com)
  • MVP Nền tảng dữ liệu của Microsoft
    • Được trao tặng trong 24 năm kể từ năm 2002 (hiện tại cho đến năm 2025), Giải thưởng Thành tựu MVP năm 2008

Bằng cấp và chứng chỉ

  • MCT, Azure DBA, MCITP và nhiều hơn nữa

Hoạt động giảng dạy (từ năm 1999)

Hoạt động ngoài trời

  • Đồng tác giả của SQL Server MVP Deep Dives Vol 2 (Manning Pubs)
  • Câu chuyện tư vấn SQL Server của Kim Jeong-seon Phần 13 đang diễn ra
  • Hội thảo SQL Unplugged trong 5 năm
  • Trưởng nhóm SQL PASS Hàn Quốc
  • Diễn giả tham gia các diễn đàn Microsoft Ignite, BITEC, Tech Camp, MVP Camp, TechEd, MSDN, v.v.

Những câu hỏi thường gặp
Hãy xem thử nhé.

H. Đây có phải là bài giảng mà sinh viên không chuyên ngành cũng có thể tham gia không?

Nếu bạn có kiến ​​thức cơ bản hoặc kinh nghiệm sử dụng SQL, bạn có thể lắng nghe. Ngay cả khi còn thiếu sót một chút, bạn vẫn có thể học được những kiến ​​thức cơ bản cần thiết khi tham gia lớp học.

H. Tôi có cần chuẩn bị gì trước khi tham dự buổi thuyết trình không?

Bạn có thể cài đặt chương trình SSMS do SQL Server cung cấp hoặc một chương trình tương tự có thể sử dụng truy vấn và tải xuống bản demo DB và tập lệnh SQL được cung cấp trước. Cấu hình DB demo sẽ được giải thích trong phần đào tạo.

H. Có lưu ý nào liên quan đến việc tham gia khóa học không (môi trường yêu cầu, những điều khác cần lưu ý, v.v.)?

Tôi cần SQL Server để trình diễn và làm bài tập. Nếu có thể, phiên bản mới nhất (tính đến năm 2021, 2019) sẽ tốt hơn, nhưng phiên bản cũ hơn cũng ổn.

H. Nó khác với nội dung đào tạo về chủ đề "Điều chỉnh truy vấn" như thế nào?

Điều chỉnh truy vấn bao gồm toàn bộ quy trình, phương pháp và thực hành chẩn đoán và phân tích hiệu suất truy vấn và cải thiện hiệu suất thông qua việc theo dõi và giải quyết nguyên nhân gốc rễ. Nội dung này nằm ngoài phạm vi của khóa học này , vì vậy vui lòng tham khảo thêm. Tôi sẽ giải thích lại phần này trong nửa đầu của video đào tạo.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Nhà phát triển SQL Server trình độ sơ cấp/trung cấp

  • Nhà phát triển giải pháp

  • Nhà phát triển chủ yếu tham gia vào các dự án CNTT

  • Dành cho các nhà phát triển mới bắt đầu và trung cấp quan tâm đến hiệu suất truy vấn

  • Quản lý cần tiêu chuẩn soạn thảo truy vấn

Cần biết trước khi bắt đầu?

  • Cơ bản về SQL

Xin chào
Đây là

1,663

Học viên

135

Đánh giá

61

Trả lời

4.7

Xếp hạng

4

Các khóa học

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

Chương trình giảng dạy

Tất cả

34 bài giảng ∙ (6giờ 12phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

93 đánh giá

4.6

93 đánh giá

  • result님의 프로필 이미지
    result

    Đánh giá 1

    Đánh giá trung bình 3.0

    3

    100% đã tham gia

    mysql 에서 좋은 쿼리를 작성하기 위해 수강을 하였는데요, sql server 기반으로 동영상 강의가 제작되어 일부 동영상 강의는 별 도움이 되지 못했으며, 일부 중요한 내용들도 쿼리 튜닝 강의로 대체한다는 내용이 아쉬웠습니다. 하지만 제가 몰랐던 내용을 알게 된 내용은 좋았습니다. mysql 다루는 사람들에게는 추천하지는 못하겠지만 sql server 를 다루시는 분들에게는 좋은 강의 인듯 합니다.

    • 김정선SQL
      Giảng viên

      안녕하세요, result님 제 설명보다 더 좋은 실제 경험담을 올려주시니 감사합니다! 비슷한 조건을 가진 분들이 과정을 판단하는데 도움이 되겠습니다. 부분적으로나마 도움이 되셨다니 다행입니다. 고맙습니다~ 김정선 드림

  • dreamania님의 프로필 이미지
    dreamania

    Đánh giá 4

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    너무 좋은 강의 감사합니다^^ 이 강의만 충분히 이해하면 성능이슈 쿼리의 80%이상은 사라질 거 같네요!!!

    • 김정선SQL
      Giảng viên

      좋은 평가에 감사드립니다~ :D

  • mhryu님의 프로필 이미지
    mhryu

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    잘봤습니다.

  • dgjung님의 프로필 이미지
    dgjung

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    • 임수민님의 프로필 이미지
      임수민

      Đánh giá 3

      Đánh giá trung bình 5.0

      5

      62% đã tham gia

      2.780.161 ₫

      Khóa học khác của sqlexpert

      Hãy khám phá các khóa học khác của giảng viên!

      Khóa học tương tự

      Khám phá các khóa học khác trong cùng lĩnh vực!