Việc sử dụng SQL trong testing giúp Tester có thể truy vấn dữ liệu Back-end đã trả ra giá trị đã đúng với yêu cầu đề bài hay chưa. Ngoài các lệnh thường dùng như Select, Having, Update, Order by, Group by,… thì các lệnh Join được dùng khá phổ biến khi Test SQL.
Có nhiều bài toán đưa ra chúng ta cần phải sử dụng nhiều bảng kết nối với nhau mới có thể đưa ra được số liệu trên màn hình. Để có thể kiểm tra được số liệu cùng lúc nhiều bảng thì sử dụng lệnh Join sẽ giúp kiểm thử tối ưu được thời gian hơn.
Sau đây là một số lệnh Join phổ biến mình thường sử dụng để truy vấn SQL trong quá trình kiểm thử
- Join ( hoặc Inner join)
Join là lệnh dùng để truy vấn tất cả các hàng, khi có ít nhất một giá trị xuất hiện ở cả 2 bảng với nhau. Các bản ghi chỉ hiển thị ở một bảng thì sẽ không được ghi nhận.
Khi sử dụng có thể dùng Inner join hoặc Join, kết quả trả về sẽ giống nhau.
Cấu trúc:
SELECT Tên_cột
FROM Tên_bảng_1
JOIN Tên_bảng_2
ON Tên_bảng_1.Cột = Tên_bảng_2.Cột;
Ví dụ:
Bảng Booking_campaign
Bảng Booking_infos
Chạy câu lệnh:
- Left join (hoặc Left outer join)
Left join là câu lệnh trả về tất cả các rows ở bảng bên trái (table1), với các rows tương ứng với bảng bên phải (table2). Sẽ lấy tất cả dữ liệu NULL ở bảng 2
Cấu trúc:
SELECT cột 1, cột 2
FROM Tên_bảng_1
LEFT JOIN Tên_bảng_2
ON Tên_bảng_1.tên_cột = Tên_bảng_2.tên_cột
Ví dụ: Sử dụng 2 bảng Booking_campaign và Booking_infos
Chạy câu lệnh
- Right join (hoặc Right outer join)
Ngược lại với left join, thì lệnh right join rả về tất cả các rows từ bên phải (table 2), với các rows tương ứng với bảng bên trái (table1), và lấy tất cả các dữ liệu NULL ở bảng 1.
Cấu trúc:
SELECT cột 1, cột 2
FROM Tên_bảng_1
RIGHT JOIN Tên_bảng_2
ON Tên_bảng_1.tên_cột = Tên_bảng_2.tên_cột
Ví dụ: Sử dụng 2 bảng Booking_campaign và Booking_infos
Chạy câu lệnh
- Full join ( hoặc Full outer join)
Full join là câu lệnh kết hợp của 2 lệnh left join và out join
Cấu trúc:
SELECT cột 1, cột 2
FROM Tên_bảng_1
FULL JOIN Tên_bảng_2
ON Tên_bảng_1.tên_cột = Tên_bảng_2.tên_cột
Kết luận: Để sử dụng thành thạo SQL thì chúng ta cần hiểu rõ ý nghĩa từng câu lệnh và sử dụng thường xuyên.