Giới thiệu về SQL phần 1
Bạn đang bắt đầu tìm hiểu với SQL để sử dụng cho việc làm bài tập trên trường hay bắt đầu cho công việc Tester thì bắt đầu đọc bài này của mình nhaaaa
1. Lệnh SQL là gì?
2. Ai sẽ thực hiện lệnh SQL này
3. Lệnh SQL được viết ở đâu để thao tác
4. Tại sao chúng ta cần sử dụng nó
5. Khi nào chúng ta thực hiện nó
6. Làm thế nào để học tốt được nó
Link bài tập có đáp án mình đã làm đề trên mạng và tự giải đáp nè: Bài Tập SQL Có Lời Giải
Bắt đầu nàooo:
1. Khái niệm về SQL
SQL viết tắt của Structured Query Language), dịch là Ngôn ngữ truy vấn mang tính cấu trúc, là một loại ngôn ngữ máy tính phổ biến để tạo, sửa, và lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ. Ngôn ngữ này phát triển vượt xa so với mục đích ban đầu là để phục vụ các hệ quản trị cơ sở dữ liệu đối tượng-quan hệ. Nó là một tiêu chuẩn ANSI/ISO
SELECT được sử dụng để lấy dữ liệu từ một hoặc nhiều bảng trong cơ sở dữ liệu, SELECT là lệnh thường dùng nhất của ngôn ngữ sửa đổi dữ liệu (tạm dịch) (tiếng Anh: Data Manipulation Language - DML). Trong việc tạo ra câu truy vấn SELECT, người sử dụng phải đưa ra mô tả cho những dữ liệu mình muốn lấy ra chứ không chỉ ra những hành động vật lý nào bắt buộc phải thực hiện để lấy ra kết quả đó. Hệ thống cơ sở dữ liệu, hay chính xác hơn là bộ tối ưu hóa câu truy vấn sẽ dịch từ câu truy vấn sang kế hoạch truy vấn tối ưu.
Những từ khóa liên quan tới SELECT bao gồm:
- FROM dùng để chỉ định dữ liệu sẽ được lấy ra từ những bảng nào, và các bảng đó quan hệ với nhau như thế nào.
- WHERE dùng để xác định những bản ghi nào sẽ được lấy ra, hoặc áp dụng với GROUP BY.
- GROUP BY dùng để kết hợp các bản ghi có những giá trị liên quan với nhau thành các phần tử của một tập hợp nhỏ hơn các bản ghi.
- HAVING dùng để xác định những bản ghi nào, là kết quả từ từ khóa GROUP BY, sẽ được lấy ra.
- ORDER BY dùng để xác định dữ liệu lấy ra sẽ được sắp xếp theo những cột nào.
– Nguồn khái niệm từ https://vi.wikipedia.org/wiki/SQL
Một số số lệnh SQL phân biệt theo bản chất:
CREATE: Tạo ra bảng mới, view và các đối tượng khác trong cơ sở dữ liệu.
ALTER: Chỉnh sửa các đối tượng dữ liệu đã hiển thị, như bảng.
DROP: Xóa toàn bộ bảng, view của bảng hoặc các đối tượng trong cơ sở dữ liệu.
Lệnh SQL: chuyên sử dụng để thực hiện các tác vụ: thêm/sửa/xóa:
- SELECT: Trích xuất bản ghi cụ thể từ một hoặc nhiều bảng
- INSERT: Chèn dữ liệu mới thêm vào CSDL
- UPDATE: Sửa đổi, cập nhật dữ liệu trong cơ sở dữ liệu.
- DELETE: Xóa dữ liệu từ cơ sở dữ liệu.
MỆNH ĐỀ TRUY VẤN:
1. Mệnh đề WHERE ( kèm link sang bài chi tiết where)
2. Mệnh đề ORDER BY ( kèm link sang bài chi tiết ORDER BY)
3. Mệnh đề GROUP BY ( kèm link sang bài chi tiết GROUP BY)
4. Mệnh đề HAVING (( kèm link sang bài chi tiết)
5. Mệnh đề JOIN: JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN ( kèm link sang bài chi tiết)
2. Ai sẽ là người thực hiện lệnh này?
Có 2 đối tượng sẽ thực hiện sử dụng đó là bên phía Dev( gồm fontend, backend) và phía bên kiểm thử( QA, Tester, BA) – Tùy từng quy mô dự án
Nếu bạn đang băn khoăn về backend/fontend thì quay lại 1 chút đọc bài viết này nhé: Phân biệt fontend và backend
Thông thường phía Dev sẽ là bên backend, bên fontend sẽ thực hiện lấy đúng dữ liệu bên đó đưa ra. Cũng có thể bên Font sẽ sẽ phải sử dụng lệnh SQL để truy vấn trực tiếp lấy dữ liệu, cũng có thể nữa là dev fontend sẽ sử dụng lệnh SQL để test trước khi bàn giao cho bên kiểm thử
Chúng ta quan tâm nhất là bên kiểm thử các đối tượng sẽ có nhiệm vụ gì với SQL:
- Nếu BA chuyên về IT thì trong tài liệu SRS sẽ cung cấp 1 vài trường hợp cần test – có lệnh SQL sẵn
- Nếu QA kiêm về phần làm sẵn tài liệu thì có thể trong tài liệu QA sẽ có 1 vài lệnh SQL sẵn – hoặc chính các bạn QA sẽ khi nhận bàn giao của các bạn Tester sẽ thực hiện test lại/test thêm trường hợp để không bị bỏ sót
- Tester kiểm tra với lệnh có sẵn/tự thao tác lệnh để kiểm tra với những trường hợp chúng ta cho rằng có thể có lỗi ở đây
3.Lệnh SQL được viết ở đâu để thao tác
Có rất nhiều phần mềm sử dụng lưu trữ SQL như: SQL server, MySQL, Navicat, Oracle,….
Chúng ta sẽ thực hiện viết lệnh SQL trên phần mềm đó để truy vấn được dữ liệu giữa các bảng với nhau, các trường lưu trữ dữ liệu,…. một cách dễ dàng
4. Tại sao Tester cần sử dụng nó
Có rất nhiều trường trong 1 bảng, có rất nhiều bảng trong 1 dựa án lưu trong Database. Nếu chúng ta kiểm tra nó thủ công bằng cơm mò ra từng dữ liệu trong bảng thì rất là lâu, dữ liệu lên đến hàng nghìn trong 1 bảng thì rất áp lực luôn, lý do Tester cần hiểu và sử dụng đó là:
- Giúp Tester khai thác dữ liệu hiệu quả cao hơn theo các tiêu chí mong muốn -> tạo nhiều trường hợp tester dữ liệu, giảm việc bỏ sót lỗi
- Ngoài truy xuất dữ liệu, Tester có thể thêm/sửa/xóa/update dữ liệu để tại môi trường dữ liệu giả lập – có dữ liệu giả lập giúp việc thao tác demo với khách hàng dễ dàng hơn
- Giúp Tester hiểu hơn về hệ thống, nền tảng phát triển nghề nghiệp( nói chuyện báo lỗi với dev được chi tiết nhất, giải thích cho khách hàng dễ hiểu hơn)
5. Khi nào Tester sẽ sử dụng lệnh SQL
+ Khi có yêu cầu tạo giả lập dữ liệu
+ Khi viết testcase với các case kiểm tra dữ liệu,…
6. Bắt đầu học lệnh SQL như thế nào?
+ Đầu tiên chúng ta cần hiểu các từ khóa SELECT , FROM , WHERE , GROUP BY , HAVING , ORDER By, … , hiểu giá trị cốt lõi của nó là gì
+ Sau đó xem mục đích cần test( yêu cầu đề bài là gì) – yêu cầu đó phù hợp với từ khóa nào ở trên
7. Đi sâu vào chi tiết lệnh SQL
Blog sau mình sẽ viết chi tiết hơn bạn nhé!
8. Người mới bắt đầu cần học như thế nào để có một tư duy tốt phát triển:
B1: Đặt câu hỏi: Tại sao cần phải test database/trường hợp nào trên website ứng với các trường hợp test DB?
B2: Xác định: Ý nghĩa từng câu lệnh, điều kiện trong một câu lệnh
B3: Đọc kỹ đề bài: chi nhỏ ý trong đề bài ra để thực hiện từng câu lệnh
B4: Tổng hợp lại các câu lệnh lồng vào nhau để có 1 lệnh hoàn chỉnh cho đề bài đưa ra
Sau bài giới thiệu này bạn hãy đọc tiếp Blog: Giới thiệu về SQL phần2
Chúc các bạn thành công với việc ôn tập SQL.
Nếu có thắc mắc gì hãy để lại cmt mình giải đáp. Nếu bạn là người mới bắt đầu với nghề Tester ( sinh viên, người trái ngành) hay liên hệ mình để được coaching 1-1 nha, email mình: donghanhcungtester@gmail.com, SQL có Database thật của website: https://dentrangtridaithanh.com/ thực hành bài tập và xem demo với dư liệu của web này
Hoặc mời mình 1 cốc trà sữa nếu bài viết hay giúp ích cho bạn nhaaaa!
Cảm ơn các bạn đã ghé qua Blog của mình!
Để lại một câu trả lời
Để làm việc được tốt bạn hãy hiểu về mục đích, luồng hoạt động của nó, sau đó mới là tìm hiểu sử dụng công cụ hỗ trợ nó. Blog của mình sẽ hướng các bạn sinh viên và các bạn trái ngành đi từ đầu hiểu bản chất cơ bản vững chắc sau đó là mở rộng hơn