15+ Đề Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 01

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 01 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng phép kết nối (JOIN) giữa các bảng?

  • A. Khi muốn lọc dữ liệu từ một bảng duy nhất.
  • B. Khi muốn truy xuất dữ liệu từ nhiều bảng có liên quan.
  • C. Khi muốn sắp xếp dữ liệu trong một bảng.
  • D. Khi muốn cập nhật dữ liệu trong một bảng.

Câu 2: Cho hai bảng "SinhVien" và "Khoa" có quan hệ "nhiều-một" (nhiều sinh viên thuộc một khoa). Khóa ngoại nào thường được sử dụng để liên kết hai bảng này?

  • A. Mã Sinh Viên trong bảng Khoa.
  • B. Tên Khoa trong bảng SinhVien.
  • C. Mã Khoa trong bảng SinhVien.
  • D. Địa chỉ Khoa trong bảng SinhVien.

Câu 3: Câu lệnh SQL nào sau đây thực hiện phép kết nối trong (INNER JOIN) giữa bảng "DonHang" và "KhachHang" dựa trên cột "MaKH"?

  • A. SELECT * FROM DonHang LEFT JOIN KhachHang ON MaKH;
  • B. SELECT * FROM DonHang INNER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH;
  • C. SELECT * FROM DonHang CROSS JOIN KhachHang WHERE MaKH;
  • D. SELECT * FROM DonHang WHERE MaKH IN (SELECT MaKH FROM KhachHang);

Câu 4: Phép kết nối LEFT JOIN trả về kết quả như thế nào?

  • A. Tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải. Nếu không có bản ghi phù hợp, các cột từ bảng bên phải sẽ có giá trị NULL.
  • B. Chỉ các bản ghi có khóa chính trùng nhau ở cả hai bảng.
  • C. Tất cả các bản ghi từ cả hai bảng, bao gồm cả các bản ghi không phù hợp.
  • D. Chỉ các bản ghi từ bảng bên phải và các bản ghi phù hợp từ bảng bên trái.

Câu 5: Xét hai bảng "SanPham" (MaSP, TenSP) và "LoaiSP" (MaLoaiSP, TenLoaiSP). Bảng "SanPham" có khóa ngoại "MaLoaiSP" tham chiếu đến "LoaiSP". Câu lệnh SQL nào liệt kê tên sản phẩm và tên loại sản phẩm của tất cả sản phẩm thuộc loại "Điện tử"?

  • A. SELECT TenSP, TenLoaiSP FROM SanPham WHERE TenLoaiSP = "Điện tử";
  • B. SELECT SanPham.TenSP, LoaiSP.TenLoaiSP FROM SanPham, LoaiSP;
  • C. SELECT SanPham.TenSP, LoaiSP.TenLoaiSP FROM SanPham INNER JOIN LoaiSP ON SanPham.MaLoaiSP = LoaiSP.MaLoaiSP WHERE LoaiSP.TenLoaiSP = "Điện tử";
  • D. SELECT TenSP, TenLoaiSP FROM SanPham CROSS JOIN LoaiSP WHERE LoaiSP.TenLoaiSP = "Điện tử";

Câu 6: Trong SQL, mệnh đề "ON" được sử dụng với phép JOIN để làm gì?

  • A. Để lọc kết quả sau khi đã kết nối các bảng.
  • B. Để chỉ định điều kiện kết nối giữa các bảng.
  • C. Để sắp xếp kết quả sau khi đã kết nối các bảng.
  • D. Để chọn các cột hiển thị từ các bảng.

Câu 7: Khi nào nên sử dụng phép kết nối FULL OUTER JOIN?

  • A. Khi chỉ muốn lấy các bản ghi có khóa chính trùng nhau ở cả hai bảng.
  • B. Khi muốn lấy tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải.
  • C. Khi muốn lấy tất cả các bản ghi từ bảng bên phải và các bản ghi phù hợp từ bảng bên trái.
  • D. Khi muốn lấy tất cả các bản ghi từ cả hai bảng, bao gồm cả các bản ghi không có bản ghi phù hợp ở bảng còn lại.

Câu 8: Cho bảng "NhanVien" (MaNV, TenNV, MaPB) và "PhongBan" (MaPB, TenPB). Câu lệnh SQL nào đếm số lượng nhân viên trong mỗi phòng ban?

  • A. SELECT TenPB, COUNT(*) FROM NhanVien WHERE MaPB IN (SELECT MaPB FROM PhongBan);
  • B. SELECT PhongBan.TenPB, COUNT(NhanVien.MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB GROUP BY PhongBan.TenPB;
  • C. SELECT TenPB, SUM(MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB;
  • D. SELECT TenPB, AVG(MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB;

Câu 9: Giả sử bạn có bảng "KhoaHoc" (MaKH, TenKH) và "HocVien" (MaHV, TenHV, MaKH). Bạn muốn liệt kê tất cả các khóa học và số lượng học viên đăng ký mỗi khóa học (kể cả khóa học chưa có học viên nào). Loại phép JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. FULL OUTER JOIN
  • C. LEFT JOIN (nếu chọn "KhoaHoc" là bảng bên trái)
  • D. CROSS JOIN

Câu 10: Câu lệnh SQL nào sau đây sử dụng bí danh (alias) cho bảng "SanPham" là "SP" và bảng "LoaiSP" là "LSP" trong phép INNER JOIN?

  • A. SELECT * FROM SanPham JOIN LoaiSP AS SP, LSP ON SanPham.MaLoaiSP = LoaiSP.MaLoaiSP;
  • B. SELECT * FROM SanPham INNER JOIN LoaiSP WITH ALIAS SP, LSP ON SP.MaLoaiSP = LSP.MaLoaiSP;
  • C. SELECT * FROM SanPham INNER JOIN LoaiSP USING ALIAS (SP FOR SanPham, LSP FOR LoaiSP) ON SP.MaLoaiSP = LSP.MaLoaiSP;
  • D. SELECT * FROM SanPham AS SP INNER JOIN LoaiSP AS LSP ON SP.MaLoaiSP = LSP.MaLoaiSP;

Câu 11: Cho ba bảng "SinhVien", "MonHoc", và "KetQua" (bảng "KetQua" liên kết "SinhVien" và "MonHoc" để lưu điểm). Làm thế nào để truy vấn tên sinh viên và tên môn học cho tất cả các bản ghi trong bảng "KetQua"?

  • A. SELECT SinhVien.TenSV, MonHoc.TenMH FROM KetQua INNER JOIN SinhVien ON KetQua.MaSV = SinhVien.MaSV INNER JOIN MonHoc ON KetQua.MaMH = MonHoc.MaMH;
  • B. SELECT TenSV, TenMH FROM SinhVien, MonHoc, KetQua WHERE SinhVien.MaSV = KetQua.MaSV AND MonHoc.MaMH = KetQua.MaMH;
  • C. SELECT SinhVien.TenSV, MonHoc.TenMH FROM SinhVien CROSS JOIN MonHoc CROSS JOIN KetQua;
  • D. SELECT * FROM KetQua LEFT JOIN SinhVien ON KetQua.MaSV = SinhVien.MaSV;

Câu 12: Phép kết nối RIGHT JOIN khác với LEFT JOIN ở điểm nào?

  • A. RIGHT JOIN nhanh hơn LEFT JOIN.
  • B. RIGHT JOIN giữ lại tất cả các bản ghi từ bảng bên phải, trong khi LEFT JOIN giữ lại tất cả các bản ghi từ bảng bên trái.
  • C. RIGHT JOIN chỉ sử dụng được với số bảng ít hơn LEFT JOIN.
  • D. Không có sự khác biệt, RIGHT JOIN và LEFT JOIN là giống nhau.

Câu 13: Cho bảng "HangHoa" (MaHH, TenHH, Gia) và "PhieuNhap" (SoPN, NgayNhap, MaHH, SoLuong). Câu lệnh SQL nào tính tổng giá trị nhập kho của mỗi mặt hàng (Gia * SoLuong)?

  • A. SELECT TenHH, SUM(Gia) FROM HangHoa INNER JOIN PhieuNhap ON HangHoa.MaHH = PhieuNhap.MaHH;
  • B. SELECT TenHH, AVG(Gia * SoLuong) FROM HangHoa INNER JOIN PhieuNhap ON HangHoa.MaHH = PhieuNhap.MaHH;
  • C. SELECT HangHoa.TenHH, SUM(HangHoa.Gia * PhieuNhap.SoLuong) AS TongGiaTriNhap FROM HangHoa INNER JOIN PhieuNhap ON HangHoa.MaHH = PhieuNhap.MaHH GROUP BY HangHoa.TenHH;
  • D. SELECT TenHH, TongGiaTriNhap FROM HangHoa INNER JOIN PhieuNhap ON HangHoa.MaHH = PhieuNhap.MaHH;

Câu 14: Để lọc các bản ghi từ phép JOIN dựa trên điều kiện trên các cột của cả hai bảng, bạn sử dụng mệnh đề nào?

  • A. WHERE
  • B. HAVING
  • C. GROUP BY
  • D. ORDER BY

Câu 15: Cho bảng "KhachHang" (MaKH, TenKH, DiaChi) và "DonHang" (SoDH, MaKH, NgayDat). Câu lệnh SQL nào liệt kê tên khách hàng và số lượng đơn hàng mà mỗi khách hàng đã đặt?

  • A. SELECT TenKH, SUM(SoDH) FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH;
  • B. SELECT KhachHang.TenKH, COUNT(DonHang.SoDH) FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH GROUP BY KhachHang.TenKH;
  • C. SELECT TenKH, AVG(SoDH) FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH;
  • D. SELECT TenKH, SoLuongDonHang FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH;

Câu 16: Trong trường hợp nào phép CROSS JOIN được sử dụng?

  • A. Khi muốn kết nối các bảng dựa trên khóa ngoại.
  • B. Khi muốn lấy các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải.
  • C. Khi muốn lấy các bản ghi từ bảng bên phải và các bản ghi phù hợp từ bảng bên trái.
  • D. Khi muốn tạo ra tích Descartes (Cartesian product) của hai bảng, tức là kết hợp mọi bản ghi từ bảng thứ nhất với mọi bản ghi từ bảng thứ hai.

Câu 17: Điều gì xảy ra nếu bạn thực hiện phép INNER JOIN giữa hai bảng mà không có mệnh đề "ON" hoặc "USING"?

  • A. SQL sẽ tự động xác định điều kiện kết nối dựa trên tên cột.
  • B. Phép JOIN sẽ được thực hiện như một phép LEFT JOIN.
  • C. Câu lệnh SQL sẽ báo lỗi cú pháp.
  • D. Phép JOIN sẽ được thực hiện như một phép CROSS JOIN.

Câu 18: Cho bảng "DanhMuc" (MaDM, TenDM) và "Sach" (MaSach, TenSach, MaDM). Câu lệnh SQL nào tìm các danh mục sách mà không có cuốn sách nào thuộc về?

  • A. SELECT TenDM FROM DanhMuc INNER JOIN Sach ON DanhMuc.MaDM = Sach.MaDM WHERE Sach.MaSach IS NULL;
  • B. SELECT DanhMuc.TenDM FROM DanhMuc LEFT JOIN Sach ON DanhMuc.MaDM = Sach.MaDM WHERE Sach.MaSach IS NULL;
  • C. SELECT TenDM FROM DanhMuc RIGHT JOIN Sach ON DanhMuc.MaDM = Sach.MaDM WHERE Sach.MaSach IS NULL;
  • D. SELECT TenDM FROM DanhMuc WHERE MaDM NOT IN (SELECT MaDM FROM Sach);

Câu 19: Khi thực hiện phép JOIN trên các bảng có cột trùng tên, làm thế nào để phân biệt các cột này trong câu lệnh SELECT?

  • A. Sử dụng tên bảng hoặc bí danh làm tiền tố cho tên cột (ví dụ: Bang1.TenCot).
  • B. Sử dụng mệnh đề "DISTINCT" để loại bỏ các cột trùng tên.
  • C. Đổi tên cột trong bảng trước khi thực hiện phép JOIN.
  • D. SQL sẽ tự động đổi tên các cột trùng tên.

Câu 20: Cho bảng "NhanVien" và "DuAn" có quan hệ "nhiều-nhiều" thông qua bảng liên kết "PhanCong" (MaNV, MaDA). Câu lệnh SQL nào liệt kê tên nhân viên và tên dự án mà họ tham gia?

  • A. SELECT TenNV, TenDA FROM NhanVien INNER JOIN DuAn ON NhanVien.MaNV = DuAn.MaDA;
  • B. SELECT TenNV, TenDA FROM NhanVien, DuAn WHERE NhanVien.MaNV = DuAn.MaDA;
  • C. SELECT NhanVien.TenNV, DuAn.TenDA FROM NhanVien INNER JOIN PhanCong ON NhanVien.MaNV = PhanCong.MaNV INNER JOIN DuAn ON PhanCong.MaDA = DuAn.MaDA;
  • D. SELECT * FROM NhanVien CROSS JOIN DuAn CROSS JOIN PhanCong;

Câu 21: Trong SQL, mệnh đề "USING (cot1, cot2, ...)" có tác dụng gì trong phép JOIN?

  • A. Để lọc kết quả JOIN dựa trên các cột được liệt kê.
  • B. Để chỉ định các cột có tên giống nhau ở cả hai bảng làm điều kiện kết nối.
  • C. Để đổi tên các cột trong kết quả JOIN.
  • D. Để sắp xếp kết quả JOIN theo các cột được liệt kê.

Câu 22: Cho bảng "SanPham" và "KhoHang" (MaKH, TenKH, DiaChi). Bảng "SanPham" có cột "MaKH" là khóa ngoại tham chiếu đến "KhoHang". Câu lệnh SQL nào liệt kê tên sản phẩm và địa chỉ kho hàng của sản phẩm đó?

  • A. SELECT TenSP, TenKH FROM SanPham INNER JOIN KhoHang ON SanPham.MaKH = KhoHang.MaKH;
  • B. SELECT TenSP, MaKH FROM SanPham INNER JOIN KhoHang ON SanPham.MaKH = KhoHang.MaKH;
  • C. SELECT SanPham.TenSP, KhoHang.DiaChi FROM SanPham INNER JOIN KhoHang ON SanPham.MaKH = KhoHang.MaKH;
  • D. SELECT TenSP, DiaChi FROM SanPham WHERE MaKH IN (SELECT MaKH FROM KhoHang);

Câu 23: Phép tự kết nối (SELF JOIN) được sử dụng khi nào?

  • A. Khi muốn kết nối một bảng với chính nó, thường để so sánh các hàng trong cùng một bảng.
  • B. Khi muốn kết nối hai bảng không có quan hệ trực tiếp.
  • C. Khi muốn thực hiện phép CROSS JOIN nhưng có điều kiện.
  • D. Khi muốn truy xuất dữ liệu từ nhiều cơ sở dữ liệu khác nhau.

Câu 24: Cho bảng "NhanVien" có cột "MaNV" và "MaNQL" (Mã người quản lý, cũng là MaNV của nhân viên khác). Câu lệnh SQL nào liệt kê tên nhân viên và tên người quản lý của họ?

  • A. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaNV = NV2.MaNQL;
  • B. SELECT NV1.TenNV AS TenNhanVien, NV2.TenNV AS TenNguoiQuanLy FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaNQL = NV2.MaNV;
  • C. SELECT NhanVien.TenNV, NhanVien.TenNV FROM NhanVien;
  • D. SELECT TenNV, TenNQL FROM NhanVien;

Câu 25: Điều gì là quan trọng nhất cần xác định trước khi viết câu lệnh JOIN giữa hai bảng?

  • A. Số lượng bản ghi trong mỗi bảng.
  • B. Tên của các bảng.
  • C. Mối quan hệ giữa hai bảng và cột nào được sử dụng để liên kết (khóa liên kết).
  • D. Loại cơ sở dữ liệu đang sử dụng.

Câu 26: Trong SQL, từ khóa nào được sử dụng để kết hợp kết quả của hai câu lệnh SELECT thành một tập kết quả duy nhất?

  • A. JOIN
  • B. MERGE
  • C. INTERSECT
  • D. UNION

Câu 27: Cho bảng "SanPham" và "KhuyenMai" (MaKM, TenKM, NgayBD, NgayKT). Sản phẩm có thể thuộc nhiều khuyến mãi. Bảng liên kết "SanPham_KhuyenMai" (MaSP, MaKM). Câu lệnh SQL nào liệt kê tên sản phẩm và tên khuyến mãi mà sản phẩm đó áp dụng?

  • A. SELECT SanPham.TenSP, KhuyenMai.TenKM FROM SanPham INNER JOIN SanPham_KhuyenMai ON SanPham.MaSP = SanPham_KhuyenMai.MaSP INNER JOIN KhuyenMai ON SanPham_KhuyenMai.MaKM = KhuyenMai.MaKM;
  • B. SELECT TenSP, TenKM FROM SanPham, KhuyenMai WHERE SanPham.MaSP = KhuyenMai.MaKM;
  • C. SELECT SanPham.TenSP, KhuyenMai.TenKM FROM SanPham CROSS JOIN KhuyenMai;
  • D. SELECT * FROM SanPham LEFT JOIN KhuyenMai ON SanPham.MaSP = KhuyenMai.MaKM;

Câu 28: Trong phép LEFT JOIN, nếu không tìm thấy bản ghi phù hợp ở bảng bên phải, giá trị của các cột từ bảng bên phải trong kết quả sẽ là gì?

  • A. Giá trị mặc định của kiểu dữ liệu cột.
  • B. NULL.
  • C. Giá trị rỗng ("").
  • D. Giá trị từ bản ghi đầu tiên của bảng bên phải.

Câu 29: Để đảm bảo hiệu suất truy vấn khi JOIN các bảng lớn, điều gì nên được cân nhắc?

  • A. Sử dụng CROSS JOIN thay vì INNER JOIN.
  • B. Chọn tất cả các cột bằng "SELECT *".
  • C. Không sử dụng mệnh đề WHERE.
  • D. Sử dụng chỉ mục (index) trên các cột được sử dụng trong điều kiện JOIN và mệnh đề WHERE.

Câu 30: Bạn có hai bảng: "Employees" (employee_id, employee_name, department_id) và "Departments" (department_id, department_name). Bạn muốn tìm tất cả nhân viên và tên phòng ban của họ, kể cả những nhân viên chưa được gán vào phòng ban nào (department_id là NULL trong bảng Employees). Loại JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng phép kết nối (JOIN) giữa các bảng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 2: Cho hai bảng 'SinhVien' và 'Khoa' có quan hệ 'nhiều-một' (nhiều sinh viên thuộc một khoa). Khóa ngoại nào thường được sử dụng để liên kết hai bảng này?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 3: Câu lệnh SQL nào sau đây thực hiện phép kết nối trong (INNER JOIN) giữa bảng 'DonHang' và 'KhachHang' dựa trên cột 'MaKH'?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 4: Phép kết nối LEFT JOIN trả về kết quả như thế nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 5: Xét hai bảng 'SanPham' (MaSP, TenSP) và 'LoaiSP' (MaLoaiSP, TenLoaiSP). Bảng 'SanPham' có khóa ngoại 'MaLoaiSP' tham chiếu đến 'LoaiSP'. Câu lệnh SQL nào liệt kê tên sản phẩm và tên loại sản phẩm của tất cả sản phẩm thuộc loại 'Điện tử'?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 6: Trong SQL, mệnh đề 'ON' được sử dụng với phép JOIN để làm gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 7: Khi nào nên sử dụng phép kết nối FULL OUTER JOIN?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 8: Cho bảng 'NhanVien' (MaNV, TenNV, MaPB) và 'PhongBan' (MaPB, TenPB). Câu lệnh SQL nào đếm số lượng nhân viên trong mỗi phòng ban?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 9: Giả sử bạn có bảng 'KhoaHoc' (MaKH, TenKH) và 'HocVien' (MaHV, TenHV, MaKH). Bạn muốn liệt kê tất cả các khóa học và số lượng học viên đăng ký mỗi khóa học (kể cả khóa học chưa có học viên nào). Loại phép JOIN nào phù hợp nhất?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 10: Câu lệnh SQL nào sau đây sử dụng bí danh (alias) cho bảng 'SanPham' là 'SP' và bảng 'LoaiSP' là 'LSP' trong phép INNER JOIN?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 11: Cho ba bảng 'SinhVien', 'MonHoc', và 'KetQua' (bảng 'KetQua' liên kết 'SinhVien' và 'MonHoc' để lưu điểm). Làm thế nào để truy vấn tên sinh viên và tên môn học cho tất cả các bản ghi trong bảng 'KetQua'?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 12: Phép kết nối RIGHT JOIN khác với LEFT JOIN ở điểm nào?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 13: Cho bảng 'HangHoa' (MaHH, TenHH, Gia) và 'PhieuNhap' (SoPN, NgayNhap, MaHH, SoLuong). Câu lệnh SQL nào tính tổng giá trị nhập kho của mỗi mặt hàng (Gia * SoLuong)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 14: Để lọc các bản ghi từ phép JOIN dựa trên điều kiện trên các cột của cả hai bảng, bạn sử dụng mệnh đề nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 15: Cho bảng 'KhachHang' (MaKH, TenKH, DiaChi) và 'DonHang' (SoDH, MaKH, NgayDat). Câu lệnh SQL nào liệt kê tên khách hàng và số lượng đơn hàng mà mỗi khách hàng đã đặt?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 16: Trong trường hợp nào phép CROSS JOIN được sử dụng?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 17: Điều gì xảy ra nếu bạn thực hiện phép INNER JOIN giữa hai bảng mà không có mệnh đề 'ON' hoặc 'USING'?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 18: Cho bảng 'DanhMuc' (MaDM, TenDM) và 'Sach' (MaSach, TenSach, MaDM). Câu lệnh SQL nào tìm các danh mục sách mà không có cuốn sách nào thuộc về?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 19: Khi thực hiện phép JOIN trên các bảng có cột trùng tên, làm thế nào để phân biệt các cột này trong câu lệnh SELECT?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 20: Cho bảng 'NhanVien' và 'DuAn' có quan hệ 'nhiều-nhiều' thông qua bảng liên kết 'PhanCong' (MaNV, MaDA). Câu lệnh SQL nào liệt kê tên nhân viên và tên dự án mà họ tham gia?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 21: Trong SQL, mệnh đề 'USING (cot1, cot2, ...)' có tác dụng gì trong phép JOIN?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 22: Cho bảng 'SanPham' và 'KhoHang' (MaKH, TenKH, DiaChi). Bảng 'SanPham' có cột 'MaKH' là khóa ngoại tham chiếu đến 'KhoHang'. Câu lệnh SQL nào liệt kê tên sản phẩm và địa chỉ kho hàng của sản phẩm đó?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 23: Phép tự kết nối (SELF JOIN) được sử dụng khi nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 24: Cho bảng 'NhanVien' có cột 'MaNV' và 'MaNQL' (Mã người quản lý, cũng là MaNV của nhân viên khác). Câu lệnh SQL nào liệt kê tên nhân viên và tên người quản lý của họ?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 25: Điều gì là quan trọng nhất cần xác định trước khi viết câu lệnh JOIN giữa hai bảng?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 26: Trong SQL, từ khóa nào được sử dụng để kết hợp kết quả của hai câu lệnh SELECT thành một tập kết quả duy nhất?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 27: Cho bảng 'SanPham' và 'KhuyenMai' (MaKM, TenKM, NgayBD, NgayKT). Sản phẩm có thể thuộc nhiều khuyến mãi. Bảng liên kết 'SanPham_KhuyenMai' (MaSP, MaKM). Câu lệnh SQL nào liệt kê tên sản phẩm và tên khuyến mãi mà sản phẩm đó áp dụng?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 28: Trong phép LEFT JOIN, nếu không tìm thấy bản ghi phù hợp ở bảng bên phải, giá trị của các cột từ bảng bên phải trong kết quả sẽ là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 29: Để đảm bảo hiệu suất truy vấn khi JOIN các bảng lớn, điều gì nên được cân nhắc?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 1

Câu 30: Bạn có hai bảng: 'Employees' (employee_id, employee_name, department_id) và 'Departments' (department_id, department_name). Bạn muốn tìm tất cả nhân viên và tên phòng ban của họ, kể cả những nhân viên chưa được gán vào phòng ban nào (department_id là NULL trong bảng Employees). Loại JOIN nào phù hợp nhất?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 02

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 02 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong SQL, mệnh đề nào được sử dụng để kết hợp dữ liệu từ hai hoặc nhiều bảng dựa trên mối quan hệ giữa các cột của chúng?

  • A. WHERE
  • B. JOIN
  • C. GROUP BY
  • D. ORDER BY

Câu 2: Giả sử bạn có hai bảng "SinhVien" và "Khoa" với khóa ngoại "MaKhoa" trong bảng "SinhVien" tham chiếu đến khóa chính "MaKhoa" trong bảng "Khoa". Loại JOIN nào sẽ trả về tất cả sinh viên và thông tin khoa tương ứng của họ, ngay cả khi một số sinh viên chưa được gán cho khoa nào?

  • A. INNER JOIN
  • B. RIGHT JOIN
  • C. LEFT JOIN
  • D. FULL OUTER JOIN

Câu 3: Cho hai bảng "DonHang" và "KhachHang". Bảng "DonHang" có cột "MaKH" liên kết với bảng "KhachHang" qua cột "MaKH". Câu lệnh SQL nào sau đây sẽ truy xuất danh sách tất cả các đơn hàng cùng với tên khách hàng tương ứng?

  • A. SELECT * FROM DonHang INNER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • B. SELECT * FROM DonHang LEFT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • C. SELECT * FROM DonHang WHERE DonHang.MaKH = KhachHang.MaKH
  • D. SELECT * FROM DonHang, KhachHang

Câu 4: Trong câu lệnh SQL sử dụng INNER JOIN, điều kiện kết nối (ON) xác định điều gì?

  • A. Các cột được chọn từ mỗi bảng.
  • B. Cách các hàng từ hai bảng được kết hợp dựa trên giá trị cột chung.
  • C. Bảng nào được ưu tiên trong quá trình kết hợp.
  • D. Thứ tự sắp xếp của dữ liệu kết quả.

Câu 5: Khi nào nên sử dụng LEFT JOIN thay vì INNER JOIN?

  • A. Khi muốn lấy dữ liệu từ cả hai bảng chỉ khi có sự trùng khớp hoàn toàn.
  • B. Khi muốn tối ưu hóa hiệu suất truy vấn.
  • C. Khi muốn lấy tất cả các hàng từ bảng bên trái và các hàng phù hợp từ bảng bên phải, kể cả khi không có sự phù hợp.
  • D. Khi muốn lấy tất cả các hàng từ bảng bên phải và các hàng phù hợp từ bảng bên trái.

Câu 6: Xem xét lược đồ cơ sở dữ liệu với bảng "SanPham" (MaSP, TenSP, MaLoaiSP) và "LoaiSanPham" (MaLoaiSP, TenLoaiSP). Để liệt kê tên sản phẩm cùng với tên loại sản phẩm, câu lệnh SQL nào hiệu quả nhất?

  • A. SELECT TenSP, TenLoaiSP FROM SanPham WHERE MaLoaiSP = LoaiSanPham.MaLoaiSP
  • B. SELECT SanPham.TenSP, LoaiSanPham.TenLoaiSP FROM SanPham INNER JOIN LoaiSanPham ON SanPham.MaLoaiSP = LoaiSanPham.MaLoaiSP
  • C. SELECT TenSP, TenLoaiSP FROM SanPham, LoaiSanPham
  • D. SELECT * FROM SanPham UNION JOIN LoaiSanPham

Câu 7: Trong SQL, giả sử bạn muốn tìm tất cả các khách hàng đã đặt hàng. Bạn có bảng "KhachHang" và "DonHang", liên kết qua "MaKH". Sử dụng phép kết nối nào để chỉ lấy thông tin khách hàng có trong bảng "DonHang"?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 8: Cho ba bảng: "SinhVien" (MaSV, TenSV, MaLop), "Lop" (MaLop, TenLop, MaKhoa), "Khoa" (MaKhoa, TenKhoa). Câu lệnh SQL nào truy vấn để hiển thị Tên sinh viên, Tên lớp và Tên khoa của mỗi sinh viên?

  • A. SELECT TenSV, TenLop, TenKhoa FROM SinhVien INNER JOIN Lop ON SinhVien.MaLop = Lop.MaLop
  • B. SELECT TenSV, TenLop, TenKhoa FROM SinhVien, Lop, Khoa
  • C. SELECT SinhVien.TenSV, Lop.TenLop, Khoa.TenKhoa FROM SinhVien INNER JOIN Lop ON SinhVien.MaLop = Lop.MaLop INNER JOIN Khoa ON Lop.MaKhoa = Khoa.MaKhoa
  • D. SELECT TenSV, TenKhoa FROM SinhVien INNER JOIN Khoa ON Lop.MaKhoa = Khoa.MaKhoa

Câu 9: Trong một truy vấn JOIN, nếu bạn muốn sử dụng bí danh (alias) cho tên bảng để rút ngắn câu lệnh và làm rõ nghĩa, bạn sử dụng từ khóa nào?

  • A. USING
  • B. WITH
  • C. AS TABLE
  • D. AS

Câu 10: Xét hai bảng "NhanVien" (MaNV, TenNV, MaPhongBan) và "PhongBan" (MaPhongBan, TenPhongBan). Câu lệnh nào sẽ cho biết số lượng nhân viên trong mỗi phòng ban?

  • A. SELECT TenPhongBan, COUNT(*) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPhongBan = PhongBan.MaPhongBan
  • B. SELECT PhongBan.TenPhongBan, COUNT(NhanVien.MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPhongBan = PhongBan.MaPhongBan GROUP BY PhongBan.TenPhongBan
  • C. SELECT TenPhongBan, SUM(MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPhongBan = PhongBan.MaPhongBan
  • D. SELECT TenPhongBan, AVG(MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPhongBan = PhongBan.MaPhongBan

Câu 11: Loại phép kết nối nào trả về tất cả các hàng từ cả hai bảng và kết hợp chúng khi có thể. Nếu không có hàng nào khớp, các cột tương ứng từ bảng không khớp sẽ chứa giá trị NULL?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 12: Giả sử bạn muốn tìm tất cả các sản phẩm và thông tin về loại sản phẩm của chúng, nhưng bạn cũng muốn xem danh sách các loại sản phẩm ngay cả khi chưa có sản phẩm nào thuộc về loại đó. Loại JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. CROSS JOIN

Câu 13: Phép kết nối "CROSS JOIN" thực hiện điều gì?

  • A. Tạo ra tích Descartes của hai bảng, kết hợp mỗi hàng từ bảng thứ nhất với mỗi hàng từ bảng thứ hai.
  • B. Chỉ trả về các hàng có giá trị khớp nhau giữa hai bảng.
  • C. Trả về tất cả các hàng từ bảng bên trái và các hàng khớp từ bảng bên phải.
  • D. Trả về tất cả các hàng từ bảng bên phải và các hàng khớp từ bảng bên trái.

Câu 14: Trong trường hợp nào bạn nên cân nhắc sử dụng "CROSS JOIN"?

  • A. Khi bạn muốn kết hợp các bảng dựa trên một cột chung.
  • B. Khi bạn muốn lấy tất cả các hàng từ bảng bên trái và các hàng khớp từ bảng bên phải.
  • C. Khi bạn muốn lấy tất cả các hàng từ bảng bên phải và các hàng khớp từ bảng bên trái.
  • D. Trong các tình huống đặc biệt khi bạn cần mọi tổ hợp có thể của các hàng từ hai bảng, ví dụ để tạo dữ liệu mẫu hoặc phân tích tổ hợp.

Câu 15: Giả sử bạn có bảng "Sach" (MaSach, TenSach, MaTacGia) và "TacGia" (MaTacGia, TenTacGia). Câu lệnh SQL nào liệt kê tên sách và tên tác giả của tất cả các sách, sắp xếp theo tên tác giả?

  • A. SELECT Sach.TenSach, TacGia.TenTacGia FROM Sach INNER JOIN TacGia ON Sach.MaTacGia = TacGia.MaTacGia
  • B. SELECT Sach.TenSach, TacGia.TenTacGia FROM Sach INNER JOIN TacGia ON Sach.MaTacGia = TacGia.MaTacGia ORDER BY TacGia.TenTacGia
  • C. SELECT Sach.TenSach, TacGia.TenTacGia FROM Sach LEFT JOIN TacGia ON Sach.MaTacGia = TacGia.MaTacGia ORDER BY Sach.TenSach
  • D. SELECT * FROM Sach INNER JOIN TacGia ON Sach.MaTacGia = TacGia.MaTacGia ORDER BY Sach.TenSach

Câu 16: Để lọc kết quả của phép JOIN, mệnh đề nào thường được sử dụng?

  • A. WHERE
  • B. HAVING
  • C. GROUP BY
  • D. ORDER BY

Câu 17: Cho truy vấn sau: `SELECT * FROM A RIGHT JOIN B ON A.id = B.id WHERE A.value > 10`. Điều kiện `A.value > 10` được áp dụng vào thời điểm nào trong quá trình thực hiện truy vấn?

  • A. Trước khi thực hiện phép RIGHT JOIN.
  • B. Trong quá trình thực hiện phép RIGHT JOIN.
  • C. Sau khi thực hiện phép RIGHT JOIN và tạo ra bảng kết quả trung gian.
  • D. Thay thế điều kiện ON của phép RIGHT JOIN.

Câu 18: Giả sử bạn có bảng "DiemThi" (MaSV, MaMH, Diem) và "MonHoc" (MaMH, TenMH). Bạn muốn tìm những sinh viên có điểm thi môn "Toán" lớn hơn 8. Câu lệnh nào sau đây đúng?

  • A. SELECT * FROM DiemThi INNER JOIN MonHoc ON DiemThi.MaMH = MonHoc.MaMH WHERE TenMH = "Toán" AND Diem > 8
  • B. SELECT * FROM DiemThi WHERE Diem > 8 AND MaMH = (SELECT MaMH FROM MonHoc WHERE TenMH = "Toán")
  • C. SELECT * FROM DiemThi, MonHoc WHERE TenMH = "Toán" AND Diem > 8
  • D. SELECT DiemThi.* FROM DiemThi INNER JOIN MonHoc ON DiemThi.MaMH = MonHoc.MaMH WHERE MonHoc.TenMH = "Toán" AND DiemThi.Diem > 8

Câu 19: Trong SQL, khi nào thì cần sử dụng tiền tố tên bảng (ví dụ: "BangA.CotX") khi truy vấn dữ liệu từ nhiều bảng?

  • A. Không bao giờ cần thiết, SQL tự động phân biệt các cột.
  • B. Khi có sự trùng tên cột giữa các bảng được kết nối trong truy vấn.
  • C. Khi truy vấn chỉ một bảng duy nhất.
  • D. Khi sử dụng mệnh đề WHERE.

Câu 20: Giả sử bạn có bảng "NhanVien" và "DuAn", một nhân viên có thể tham gia nhiều dự án. Mối quan hệ này được thể hiện qua bảng trung gian "NhanVienDuAn" (MaNV, MaDA). Để liệt kê tên nhân viên và tên dự án mà họ tham gia, bạn cần kết nối bao nhiêu bảng?

  • A. 2 bảng ("NhanVien" và "DuAn")
  • B. 1 bảng ("NhanVienDuAn")
  • C. 3 bảng ("NhanVien", "DuAn", "NhanVienDuAn")
  • D. Không cần kết nối bảng nào, chỉ cần truy vấn "NhanVienDuAn"

Câu 21: Cho bảng "Phim" (MaPhim, TenPhim, MaTheLoai) và "TheLoai" (MaTheLoai, TenTheLoai). Câu lệnh SQL nào đếm số lượng phim trong mỗi thể loại?

  • A. SELECT TheLoai.TenTheLoai, COUNT(Phim.MaPhim) FROM Phim INNER JOIN TheLoai ON Phim.MaTheLoai = TheLoai.MaTheLoai GROUP BY TheLoai.TenTheLoai
  • B. SELECT TenTheLoai, COUNT(*) FROM Phim WHERE MaTheLoai = TheLoai.MaTheLoai
  • C. SELECT TheLoai.TenTheLoai, SUM(Phim.MaPhim) FROM Phim INNER JOIN TheLoai ON Phim.MaTheLoai = TheLoai.MaTheLoai GROUP BY TheLoai.TenTheLoai
  • D. SELECT TenTheLoai, AVG(Phim.MaPhim) FROM Phim INNER JOIN TheLoai ON Phim.MaTheLoai = TheLoai.MaTheLoai GROUP BY TheLoai.TenTheLoai

Câu 22: Trong SQL, phép kết nối nào trả về tích Descartes của hai tập hợp bản ghi?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. CROSS JOIN

Câu 23: Để tìm các bản ghi không có bản ghi tương ứng trong bảng liên kết khi sử dụng LEFT JOIN, bạn thường dùng điều kiện nào trong mệnh đề WHERE?

  • A. WHERE [Bảng_phải].KhoaChinh IS NOT NULL
  • B. WHERE [Bảng_phải].KhoaChinh IS NULL
  • C. WHERE [Bảng_trái].KhoaChinh IS NULL
  • D. WHERE [Bảng_trái].KhoaChinh IS NOT NULL

Câu 24: Bạn có bảng "KhoaHoc" (MaKH, TenKH) và "SinhVien" (MaSV, TenSV, MaKH). Câu lệnh SQL nào trả về danh sách tất cả các khoa học và số lượng sinh viên thuộc mỗi khoa, kể cả khoa chưa có sinh viên?

  • A. SELECT KhoaHoc.TenKH, COUNT(SinhVien.MaSV) FROM KhoaHoc INNER JOIN SinhVien ON KhoaHoc.MaKH = SinhVien.MaKH GROUP BY KhoaHoc.TenKH
  • B. SELECT KhoaHoc.TenKH, COUNT(SinhVien.MaSV) FROM KhoaHoc RIGHT JOIN SinhVien ON KhoaHoc.MaKH = SinhVien.MaKH GROUP BY KhoaHoc.TenKH
  • C. SELECT KhoaHoc.TenKH, COUNT(SinhVien.MaSV) FROM KhoaHoc LEFT JOIN SinhVien ON KhoaHoc.MaKH = SinhVien.MaKH GROUP BY KhoaHoc.TenKH
  • D. SELECT KhoaHoc.TenKH, SUM(SinhVien.MaSV) FROM KhoaHoc LEFT JOIN SinhVien ON KhoaHoc.MaKH = SinhVien.MaKH GROUP BY KhoaHoc.TenKH

Câu 25: Mục đích chính của việc sử dụng phép JOIN trong SQL là gì?

  • A. Để sắp xếp dữ liệu trong một bảng.
  • B. Để lọc dữ liệu từ một bảng.
  • C. Để kết hợp dữ liệu từ hai hoặc nhiều bảng có liên quan.
  • D. Để tạo bảng mới từ dữ liệu hiện có.

Câu 26: Trong SQL, mệnh đề "ON" được sử dụng cùng với mệnh đề "JOIN" để làm gì?

  • A. Xác định các cột sẽ được hiển thị trong kết quả.
  • B. Xác định điều kiện để kết hợp các hàng từ các bảng được JOIN.
  • C. Lọc các hàng sau khi đã JOIN các bảng.
  • D. Sắp xếp các hàng trong kết quả JOIN.

Câu 27: Khi thực hiện phép "INNER JOIN" giữa hai bảng "A" và "B", kết quả sẽ chứa những hàng nào?

  • A. Chỉ các hàng từ cả "A" và "B" có giá trị khớp nhau theo điều kiện JOIN.
  • B. Tất cả các hàng từ bảng "A" và các hàng khớp từ "B".
  • C. Tất cả các hàng từ bảng "B" và các hàng khớp từ "A".
  • D. Tất cả các hàng từ cả "A" và "B", bất kể có khớp hay không.

Câu 28: Trong câu lệnh SQL sau: `SELECT TenSP, TenLoaiSP FROM SanPham LEFT JOIN LoaiSanPham ON SanPham.MaLoaiSP = LoaiSanPham.MaLoaiSP`. Nếu một sản phẩm không có "MaLoaiSP" (NULL), điều gì sẽ xảy ra với thông tin "TenLoaiSP" trong kết quả truy vấn?

  • A. Truy vấn sẽ báo lỗi.
  • B. Sản phẩm đó sẽ không được hiển thị trong kết quả.
  • C. Giá trị "TenLoaiSP" cho sản phẩm đó sẽ là NULL.
  • D. Giá trị "TenLoaiSP" sẽ được tự động điền bằng "Không xác định".

Câu 29: Để truy vấn dữ liệu từ nhiều bảng có mối quan hệ, phương pháp nào hiệu quả và tối ưu hơn so với sử dụng subquery lồng nhau?

  • A. Subquery lồng nhau.
  • B. Phép JOIN.
  • C. Cả hai phương pháp đều tương đương về hiệu quả.
  • D. Tùy thuộc vào từng trường hợp cụ thể.

Câu 30: Khi thiết kế cơ sở dữ liệu quan hệ, việc xác định khóa ngoại và thiết lập liên kết giữa các bảng có vai trò quan trọng nhất trong việc nào?

  • A. Tăng tốc độ truy vấn dữ liệu đơn bảng.
  • B. Giảm dung lượng lưu trữ của cơ sở dữ liệu.
  • C. Đơn giản hóa cấu trúc bảng.
  • D. Đảm bảo tính toàn vẹn dữ liệu và cho phép truy xuất dữ liệu liên quan từ nhiều bảng một cách hiệu quả.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 1: Trong SQL, mệnh đề nào được sử dụng để kết hợp dữ liệu từ hai hoặc nhiều bảng dựa trên mối quan hệ giữa các cột của chúng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 2: Giả sử bạn có hai bảng 'SinhVien' và 'Khoa' với khóa ngoại 'MaKhoa' trong bảng 'SinhVien' tham chiếu đến khóa chính 'MaKhoa' trong bảng 'Khoa'. Loại JOIN nào sẽ trả về tất cả sinh viên và thông tin khoa tương ứng của họ, ngay cả khi một số sinh viên chưa được gán cho khoa nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 3: Cho hai bảng 'DonHang' và 'KhachHang'. Bảng 'DonHang' có cột 'MaKH' liên kết với bảng 'KhachHang' qua cột 'MaKH'. Câu lệnh SQL nào sau đây sẽ truy xuất danh sách tất cả các đơn hàng cùng với tên khách hàng tương ứng?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 4: Trong câu lệnh SQL sử dụng INNER JOIN, điều kiện kết nối (ON) xác định điều gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 5: Khi nào nên sử dụng LEFT JOIN thay vì INNER JOIN?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 6: Xem xét lược đồ cơ sở dữ liệu với bảng 'SanPham' (MaSP, TenSP, MaLoaiSP) và 'LoaiSanPham' (MaLoaiSP, TenLoaiSP). Để liệt kê tên sản phẩm cùng với tên loại sản phẩm, câu lệnh SQL nào hiệu quả nhất?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 7: Trong SQL, giả sử bạn muốn tìm tất cả các khách hàng đã đặt hàng. Bạn có bảng 'KhachHang' và 'DonHang', liên kết qua 'MaKH'. Sử dụng phép kết nối nào để chỉ lấy thông tin khách hàng có trong bảng 'DonHang'?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 8: Cho ba bảng: 'SinhVien' (MaSV, TenSV, MaLop), 'Lop' (MaLop, TenLop, MaKhoa), 'Khoa' (MaKhoa, TenKhoa). Câu lệnh SQL nào truy vấn để hiển thị Tên sinh viên, Tên lớp và Tên khoa của mỗi sinh viên?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 9: Trong một truy vấn JOIN, nếu bạn muốn sử dụng bí danh (alias) cho tên bảng để rút ngắn câu lệnh và làm rõ nghĩa, bạn sử dụng từ khóa nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 10: Xét hai bảng 'NhanVien' (MaNV, TenNV, MaPhongBan) và 'PhongBan' (MaPhongBan, TenPhongBan). Câu lệnh nào sẽ cho biết số lượng nhân viên trong mỗi phòng ban?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 11: Loại phép kết nối nào trả về tất cả các hàng từ cả hai bảng và kết hợp chúng khi có thể. Nếu không có hàng nào khớp, các cột tương ứng từ bảng không khớp sẽ chứa giá trị NULL?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 12: Giả sử bạn muốn tìm tất cả các sản phẩm và thông tin về loại sản phẩm của chúng, nhưng bạn cũng muốn xem danh sách các loại sản phẩm ngay cả khi chưa có sản phẩm nào thuộc về loại đó. Loại JOIN nào phù hợp nhất?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 13: Phép kết nối 'CROSS JOIN' thực hiện điều gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 14: Trong trường hợp nào bạn nên cân nhắc sử dụng 'CROSS JOIN'?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 15: Giả sử bạn có bảng 'Sach' (MaSach, TenSach, MaTacGia) và 'TacGia' (MaTacGia, TenTacGia). Câu lệnh SQL nào liệt kê tên sách và tên tác giả của tất cả các sách, sắp xếp theo tên tác giả?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 16: Để lọc kết quả của phép JOIN, mệnh đề nào thường được sử dụng?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 17: Cho truy vấn sau: `SELECT * FROM A RIGHT JOIN B ON A.id = B.id WHERE A.value > 10`. Điều kiện `A.value > 10` được áp dụng vào thời điểm nào trong quá trình thực hiện truy vấn?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 18: Giả sử bạn có bảng 'DiemThi' (MaSV, MaMH, Diem) và 'MonHoc' (MaMH, TenMH). Bạn muốn tìm những sinh viên có điểm thi môn 'Toán' lớn hơn 8. Câu lệnh nào sau đây đúng?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 19: Trong SQL, khi nào thì cần sử dụng tiền tố tên bảng (ví dụ: 'BangA.CotX') khi truy vấn dữ liệu từ nhiều bảng?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 20: Giả sử bạn có bảng 'NhanVien' và 'DuAn', một nhân viên có thể tham gia nhiều dự án. Mối quan hệ này được thể hiện qua bảng trung gian 'NhanVienDuAn' (MaNV, MaDA). Để liệt kê tên nhân viên và tên dự án mà họ tham gia, bạn cần kết nối bao nhiêu bảng?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 21: Cho bảng 'Phim' (MaPhim, TenPhim, MaTheLoai) và 'TheLoai' (MaTheLoai, TenTheLoai). Câu lệnh SQL nào đếm số lượng phim trong mỗi thể loại?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 22: Trong SQL, phép kết nối nào trả về tích Descartes của hai tập hợp bản ghi?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 23: Để tìm các bản ghi không có bản ghi tương ứng trong bảng liên kết khi sử dụng LEFT JOIN, bạn thường dùng điều kiện nào trong mệnh đề WHERE?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 24: Bạn có bảng 'KhoaHoc' (MaKH, TenKH) và 'SinhVien' (MaSV, TenSV, MaKH). Câu lệnh SQL nào trả về danh sách tất cả các khoa học và số lượng sinh viên thuộc mỗi khoa, kể cả khoa chưa có sinh viên?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 25: Mục đích chính của việc sử dụng phép JOIN trong SQL là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 26: Trong SQL, mệnh đề 'ON' được sử dụng cùng với mệnh đề 'JOIN' để làm gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 27: Khi thực hiện phép 'INNER JOIN' giữa hai bảng 'A' và 'B', kết quả sẽ chứa những hàng nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 28: Trong câu lệnh SQL sau: `SELECT TenSP, TenLoaiSP FROM SanPham LEFT JOIN LoaiSanPham ON SanPham.MaLoaiSP = LoaiSanPham.MaLoaiSP`. Nếu một sản phẩm không có 'MaLoaiSP' (NULL), điều gì sẽ xảy ra với thông tin 'TenLoaiSP' trong kết quả truy vấn?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 29: Để truy vấn dữ liệu từ nhiều bảng có mối quan hệ, phương pháp nào hiệu quả và tối ưu hơn so với sử dụng subquery lồng nhau?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 2

Câu 30: Khi thiết kế cơ sở dữ liệu quan hệ, việc xác định khóa ngoại và thiết lập liên kết giữa các bảng có vai trò quan trọng nhất trong việc nào?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 03

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 03 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong một cơ sở dữ liệu quản lý thư viện, bảng `Sách` chứa thông tin sách (mã sách, tên sách, mã thể loại) và bảng `Thể loại` chứa thông tin thể loại (mã thể loại, tên thể loại). Câu lệnh SQL nào sau đây truy xuất danh sách tên sách và tên thể loại tương ứng?

  • A. SELECT Sách.TênSách, Thể loại.TênThể loại FROM Sách WHERE Sách.MaTheLoai = Thể loại.MaTheLoai
  • B. SELECT Sách.TênSách, Thể loại.TênThể loại FROM Sách INNER JOIN Thể loại ON Sách.MaTheLoai = Thể loại.MaTheLoai
  • C. SELECT TênSách, TênThể loại FROM Sách, Thể loại
  • D. SELECT * FROM Sách INNER JOIN Thể loại

Câu 2: Xét hai bảng `Nhân viên` (mã NV, tên NV, phòng ban) và `Phòng ban` (mã phòng, tên phòng, trưởng phòng). Để tìm tên nhân viên và tên phòng ban của nhân viên "Nguyễn Văn A", câu lệnh SQL nào hiệu quả nhất?

  • A. SELECT * FROM Nhân viên, Phòng ban WHERE TênNV = "Nguyễn Văn A"
  • B. SELECT Nhân viên.TênNV, Phòng ban.TênPhòng FROM Nhân viên WHERE TênNV = "Nguyễn Văn A"
  • C. SELECT Nhân viên.TênNV, Phòng ban.TênPhòng FROM Nhân viên INNER JOIN Phòng ban ON Nhân viên.PhòngBan = Phòng ban.MãPhòng WHERE Nhân viên.TênNV = "Nguyễn Văn A"
  • D. SELECT TênNV, TênPhòng FROM Nhân viên LEFT JOIN Phòng ban ON Nhân viên.PhòngBan = Phòng ban.MãPhòng

Câu 3: Trong cơ sở dữ liệu bán hàng, bảng `Sản phẩm` (mã SP, tên SP, giá) và `Đơn hàng` (mã ĐH, mã SP, số lượng). Câu lệnh SQL nào tính tổng số lượng của mỗi sản phẩm đã bán?

  • A. SELECT SUM(Số lượng) FROM Đơn hàng
  • B. SELECT Sản phẩm.TênSP, Đơn hàng.Số lượng FROM Sản phẩm INNER JOIN Đơn hàng ON Sản phẩm.MãSP = Đơn hàng.MãSP
  • C. SELECT Sản phẩm.TênSP, SUM(Đơn hàng.Số lượng) FROM Sản phẩm WHERE Sản phẩm.MãSP = Đơn hàng.MãSP
  • D. SELECT Sản phẩm.TênSP, SUM(Đơn hàng.Số lượng) FROM Sản phẩm INNER JOIN Đơn hàng ON Sản phẩm.MãSP = Đơn hàng.MãSP GROUP BY Sản phẩm.TênSP

Câu 4: Cho hai bảng `Học sinh` (mã HS, tên HS, lớp) và `Điểm` (mã HS, môn học, điểm số). Câu lệnh SQL nào liệt kê tên học sinh và điểm môn "Toán" của học sinh đó, chỉ xét những học sinh có điểm môn Toán?

  • A. SELECT Học_sinh.TenHS, Diem.DiemSo FROM Hoc_sinh INNER JOIN Diem ON Hoc_sinh.MaHS = Diem.MaHS WHERE Diem.MonHoc = "Toán"
  • B. SELECT Hoc_sinh.TenHS, Diem.DiemSo FROM Hoc_sinh LEFT JOIN Diem ON Hoc_sinh.MaHS = Diem.MaHS WHERE Diem.MonHoc = "Toán"
  • C. SELECT Hoc_sinh.TenHS, Diem.DiemSo FROM Hoc_sinh, Diem WHERE Diem.MonHoc = "Toán"
  • D. SELECT TenHS, DiemSo FROM Hoc_sinh INNER JOIN Diem ON Hoc_sinh.MaHS = Diem.MaHS

Câu 5: Bảng `Giáo viên` (mã GV, tên GV, mã khoa) và `Khoa` (mã khoa, tên khoa). Câu lệnh SQL nào tìm tên giáo viên và tên khoa của tất cả giáo viên, kể cả giáo viên chưa được gán khoa?

  • A. SELECT Giáo_viên.TenGV, Khoa.TenKhoa FROM Giáo_viên INNER JOIN Khoa ON Giáo_viên.MaKhoa = Khoa.MaKhoa
  • B. SELECT Giáo_viên.TenGV, Khoa.TenKhoa FROM Giáo_viên LEFT JOIN Khoa ON Giáo_viên.MaKhoa = Khoa.MaKhoa
  • C. SELECT TenGV, TenKhoa FROM Giáo_viên, Khoa
  • D. SELECT * FROM Giáo_viên LEFT JOIN Khoa

Câu 6: Cho lược đồ CSDL: `Khách hàng` (mã KH, tên KH) và `Đơn hàng` (mã ĐH, mã KH, ngày đặt). Câu lệnh SQL nào tìm tên khách hàng và số đơn hàng của mỗi khách hàng?

  • A. SELECT Khách_hàng.TenKH, Đơn_hàng.MaĐH FROM Khách_hàng INNER JOIN Đơn_hàng ON Khách_hàng.MaKH = Đơn_hàng.MaKH
  • B. SELECT TenKH, COUNT(*) FROM Khách_hàng
  • C. SELECT Khách_hàng.TenKH, COUNT(Đơn_hàng.MaĐH) FROM Khách_hàng INNER JOIN Đơn_hàng ON Khách_hàng.MaKH = Đơn_hàng.MaKH GROUP BY Khách_hàng.TenKH
  • D. SELECT Khách_hàng.TenKH, SUM(Đơn_hàng.MaĐH) FROM Khách_hàng INNER JOIN Đơn_hàng ON Khách_hàng.MaKH = Đơn_hàng.MaKH GROUP BY Khách_hàng.TenKH

Câu 7: Xét bảng `Bài viết` (mã bài viết, tiêu đề, mã tác giả) và `Tác giả` (mã tác giả, tên tác giả). Câu lệnh SQL nào liệt kê tiêu đề bài viết và tên tác giả, sắp xếp theo tên tác giả?

  • A. SELECT Bài_viết.Tiêu_đề, Tác_giả.Tên_tác_giả FROM Bài_viết INNER JOIN Tác_giả ON Bài_viết.Ma_tác_giả = Tác_giả.Ma_tác_giả
  • B. SELECT Tiêu_đề, Tên_tác_giả FROM Bài_viết INNER JOIN Tác_giả ON Bài_viết.Ma_tác_giả = Tác_giả.Ma_tác_giả
  • C. SELECT Bài_viết.Tiêu_đề, Tác_giả.Tên_tác_giả FROM Bài_viết INNER JOIN Tác_giả ON Bài_viết.Ma_tác_giả = Tác_giả.Ma_tác_giả ORDER BY Tiêu_đề
  • D. SELECT Bài_viết.Tiêu_đề, Tác_giả.Tên_tác_giả FROM Bài_viết INNER JOIN Tác_giả ON Bài_viết.Ma_tác_giả = Tác_giả.Ma_tác_giả ORDER BY Tác_giả.Tên_tác_giả

Câu 8: Cho ba bảng: `Sinh viên` (mã SV, tên SV), `Môn học` (mã MH, tên MH), và `Đăng ký` (mã SV, mã MH, học kỳ). Câu lệnh SQL nào truy vấn tên sinh viên và tên môn học mà sinh viên đó đã đăng ký trong học kỳ "HK1-2023"?

  • A. SELECT Sinh_viên.TenSV, Mon_hoc.TenMH FROM Sinh_viên INNER JOIN Đăng_ký ON Sinh_viên.MaSV = Đăng_ký.MaSV INNER JOIN Mon_hoc ON Đăng_ký.MaMH = Mon_hoc.MaMH WHERE Đăng_ký.Hoc_ky = "HK1-2023"
  • B. SELECT TenSV, TenMH FROM Sinh_viên, Mon_hoc, Đăng_ký WHERE Đăng_ký.Hoc_ky = "HK1-2023"
  • C. SELECT Sinh_viên.TenSV, Mon_hoc.TenMH FROM Sinh_viên INNER JOIN Mon_hoc ON Sinh_viên.MaSV = Mon_hoc.MaMH WHERE Đăng_ký.Hoc_ky = "HK1-2023"
  • D. SELECT * FROM Sinh_viên INNER JOIN Đăng_ký INNER JOIN Mon_hoc WHERE Đăng_ký.Hoc_ky = "HK1-2023"

Câu 9: Trong cơ sở dữ liệu về sản phẩm và nhà cung cấp, bảng `Sản phẩm` (mã SP, tên SP, mã NCC) và `Nhà cung cấp` (mã NCC, tên NCC, địa chỉ). Câu lệnh SQL nào tìm tên sản phẩm và tên nhà cung cấp cho những sản phẩm có giá trên 100.000 VNĐ?

  • A. SELECT Sản_phẩm.TenSP, Nhà_cung_cấp.TenNCC FROM Sản_phẩm INNER JOIN Nhà_cung_cấp ON Sản_phẩm.MaNCC = Nhà_cung_cấp.MaNCC
  • B. SELECT Sản_phẩm.TenSP, Nhà_cung_cấp.TenNCC FROM Sản_phẩm INNER JOIN Nhà_cung_cấp ON Sản_phẩm.MaNCC = Nhà_cung_cấp.MaNCC WHERE Sản_phẩm.Giá > 100000
  • C. SELECT TenSP, TenNCC FROM Sản_phẩm WHERE Giá > 100000
  • D. SELECT * FROM Sản_phẩm INNER JOIN Nhà_cung_cấp WHERE Giá > 100000

Câu 10: Bảng `Phim` (mã phim, tên phim, mã đạo diễn) và `Đạo diễn` (mã đạo diễn, tên đạo diễn). Câu lệnh SQL nào đếm số lượng phim mà mỗi đạo diễn đã đạo diễn?

  • A. SELECT Đạo_diễn.TenĐD, Phim.MaPhim FROM Đạo_diễn INNER JOIN Phim ON Đạo_diễn.MaĐD = Phim.MaĐD
  • B. SELECT COUNT(*) FROM Phim
  • C. SELECT Đạo_diễn.TenĐD, COUNT(Phim.MaPhim) FROM Đạo_diễn INNER JOIN Phim ON Đạo_diễn.MaĐD = Phim.MaĐD GROUP BY Đạo_diễn.TenĐD
  • D. SELECT Đạo_diễn.TenĐD, SUM(Phim.MaPhim) FROM Đạo_diễn INNER JOIN Phim ON Đạo_diễn.MaĐD = Phim.MaĐD GROUP BY Đạo_diễn.TenĐD

Câu 11: Trong một hệ thống quản lý bán vé máy bay, bảng `Chuyến bay` (mã CB, điểm đi, điểm đến) và `Vé` (mã vé, mã CB, giá vé). Câu lệnh SQL nào tìm điểm đi, điểm đến của các chuyến bay có ít nhất 20 vé đã bán?

  • A. SELECT Chuyến_bay.Điểm_đi, Chuyến_bay.Điểm_đến FROM Chuyến_bay INNER JOIN Vé ON Chuyến_bay.MaCB = Vé.MaCB WHERE COUNT(Vé.MaVé) >= 20
  • B. SELECT Điểm_đi, Điểm_đến FROM Chuyến_bay WHERE COUNT(Vé.MaVé) >= 20
  • C. SELECT Chuyến_bay.Điểm_đi, Chuyến_bay.Điểm_đến FROM Chuyến_bay INNER JOIN Vé ON Chuyến_bay.MaCB = Vé.MaCB
  • D. SELECT Chuyến_bay.Điểm_đi, Chuyến_bay.Điểm_đến FROM Chuyến_bay INNER JOIN Vé ON Chuyến_bay.MaCB = Vé.MaCB GROUP BY Chuyến_bay.Điểm_đi, Chuyến_bay.Điểm_đến HAVING COUNT(Vé.MaVé) >= 20

Câu 12: Cho bảng `Dự án` (mã DA, tên DA, trưởng phòng) và `Phòng ban` (mã phòng, tên phòng). Câu lệnh SQL nào tìm tên dự án và tên phòng ban quản lý dự án đó?

  • A. SELECT Dự_án.TenDA, Phòng_ban.TenPhong FROM Dự_án INNER JOIN Phòng_ban ON Dự_án.Trưởng_phòng = Phòng_ban.MaPhong
  • B. SELECT TenDA, TenPhong FROM Dự_án, Phòng_ban WHERE Dự_án.Trưởng_phòng = Phòng_ban.MaPhong
  • C. SELECT Dự_án.TenDA, Phòng_ban.TenPhong FROM Dự_án LEFT JOIN Phòng_ban ON Dự_án.Trưởng_phòng = Phòng_ban.MaPhong
  • D. SELECT TenDA, TenPhong FROM Dự_án INNER JOIN Phòng_ban

Câu 13: Bảng `Sách` (mã sách, tên sách, năm xuất bản) và `Tác giả` (mã tác giả, tên tác giả, mã sách). Câu lệnh SQL nào liệt kê tên sách và tên tác giả, nhưng chỉ cho những sách xuất bản sau năm 2020?

  • A. SELECT Sách.TenSach, Tác_giả.TenTG FROM Sách INNER JOIN Tác_giả ON Sách.MaSach = Tác_giả.MaSach
  • B. SELECT Sách.TenSach, Tác_giả.TenTG FROM Sách INNER JOIN Tác_giả ON Sách.MaSach = Tác_giả.MaSach WHERE Sách.NamXB > 2020
  • C. SELECT TenSach, TenTG FROM Sách WHERE NamXB > 2020
  • D. SELECT * FROM Sách INNER JOIN Tác_giả WHERE NamXB > 2020

Câu 14: Cho lược đồ CSDL: `Nhân viên` (mã NV, tên NV, lương) và `Kỹ năng` (mã KN, tên KN, mã NV). Câu lệnh SQL nào tìm tên nhân viên và tên kỹ năng của họ, chỉ xét những nhân viên có lương trên 10 triệu?

  • A. SELECT Nhân_viên.TenNV, Kỹ_năng.TenKN FROM Nhân_viên INNER JOIN Kỹ_năng ON Nhân_viên.MaNV = Kỹ_năng.MaNV
  • B. SELECT TenNV, TenKN FROM Nhân_viên WHERE Lương > 10000000
  • C. SELECT Nhân_viên.TenNV, Kỹ_năng.TenKN FROM Nhân_viên INNER JOIN Kỹ_năng ON Nhân_viên.MaNV = Kỹ_năng.MaNV WHERE Nhân_viên.Lương > 10000000
  • D. SELECT * FROM Nhân_viên INNER JOIN Kỹ_năng WHERE Lương > 10000000

Câu 15: Bảng `Khóa học` (mã KH, tên KH, học phí) và `Học viên` (mã HV, tên HV, mã KH). Câu lệnh SQL nào tìm tên khóa học và tên học viên đã đăng ký khóa học đó, nhưng chỉ cho những khóa học có học phí dưới 500.000 VNĐ?

  • A. SELECT Khóa_học.TenKH, Học_viên.TenHV FROM Khóa_học INNER JOIN Học_viên ON Khóa_học.MaKH = Học_viên.MaKH
  • B. SELECT TenKH, TenHV FROM Khóa_học WHERE Học_phí < 500000
  • C. SELECT Khóa_học.TenKH, Học_viên.TenHV FROM Khóa_học LEFT JOIN Học_viên ON Khóa_học.MaKH = Học_viên.MaKH WHERE Khóa_học.Học_phí < 500000
  • D. SELECT Khóa_học.TenKH, Học_viên.TenHV FROM Khóa_học INNER JOIN Học_viên ON Khóa_học.MaKH = Học_viên.MaKH WHERE Khóa_học.Học_phí < 500000

Câu 16: Cho bảng `Sản phẩm` (mã SP, tên SP, giá, mã loại) và `Loại sản phẩm` (mã loại, tên loại). Câu lệnh SQL nào truy xuất tên sản phẩm và tên loại sản phẩm, sắp xếp theo tên loại sản phẩm và sau đó theo giá sản phẩm (giá giảm dần)?

  • A. SELECT Sản_phẩm.TenSP, Loại_sản_phẩm.TenLoai FROM Sản_phẩm INNER JOIN Loại_sản_phẩm ON Sản_phẩm.MaLoai = Loại_sản_phẩm.MaLoai ORDER BY Loại_sản_phẩm.TenLoai ASC, Sản_phẩm.Giá DESC
  • B. SELECT TenSP, TenLoai FROM Sản_phẩm INNER JOIN Loại_sản_phẩm ORDER BY TenLoai, Giá DESC
  • C. SELECT Sản_phẩm.TenSP, Loại_sản_phẩm.TenLoai FROM Sản_phẩm INNER JOIN Loại_sản_phẩm ON Sản_phẩm.MaLoai = Loại_sản_phẩm.MaLoai ORDER BY TenLoai, Giá
  • D. SELECT Sản_phẩm.TenSP, Loại_sản_phẩm.TenLoai FROM Sản_phẩm INNER JOIN Loại_sản_phẩm ON Sản_phẩm.MaLoai = Loại_sản_phẩm.MaLoai ORDER BY Loại_sản_phẩm.TenLoai DESC, Sản_phẩm.Giá ASC

Câu 17: Xét bảng `Nhân viên` (mã NV, tên NV, mã phòng) và `Phòng ban` (mã phòng, tên phòng, địa điểm). Câu lệnh SQL nào tìm tên nhân viên, tên phòng ban và địa điểm phòng ban của tất cả nhân viên, kể cả nhân viên chưa được gán phòng ban?

  • A. SELECT Nhân_viên.TenNV, Phòng_ban.TenPhong, Phòng_ban.DiaDiem FROM Nhân_viên INNER JOIN Phòng_ban ON Nhân_viên.MaPhong = Phòng_ban.MaPhong
  • B. SELECT Nhân_viên.TenNV, Phòng_ban.TenPhong, Phòng_ban.DiaDiem FROM Nhân_viên LEFT JOIN Phòng_ban ON Nhân_viên.MaPhong = Phòng_ban.MaPhong
  • C. SELECT TenNV, TenPhong, DiaDiem FROM Nhân_viên, Phòng_ban
  • D. SELECT * FROM Nhân_viên LEFT JOIN Phòng_ban

Câu 18: Cho ba bảng: `Giáo viên` (mã GV, tên GV), `Môn học` (mã MH, tên MH), `Giảng dạy` (mã GV, mã MH, năm học). Câu lệnh SQL nào truy vấn tên giáo viên và số lượng môn học mà mỗi giáo viên dạy trong năm học "2023-2024"?

  • A. SELECT Giáo_viên.TenGV, Môn_học.TenMH FROM Giáo_viên INNER JOIN Giảng_dạy ON Giáo_viên.MaGV = Giảng_dạy.MaGV INNER JOIN Môn_học ON Giảng_dạy.MaMH = Môn_học.MaMH WHERE Giảng_dạy.Nam_hoc = "2023-2024"
  • B. SELECT TenGV, COUNT(*) FROM Giáo_viên WHERE Giảng_dạy.Nam_hoc = "2023-2024"
  • C. SELECT Giáo_viên.TenGV, COUNT(Giảng_dạy.MaMH) FROM Giáo_viên INNER JOIN Giảng_dạy ON Giáo_viên.MaGV = Giảng_dạy.MaGV WHERE Giảng_dạy.Nam_hoc = "2023-2024" GROUP BY Giáo_viên.TenGV
  • D. SELECT Giáo_viên.TenGV, SUM(Giảng_dạy.MaMH) FROM Giáo_viên INNER JOIN Giảng_dạy ON Giáo_viên.MaGV = Giảng_dạy.MaGV WHERE Giảng_dạy.Nam_hoc = "2023-2024" GROUP BY Giáo_viên.TenGV

Câu 19: Bảng `Sản phẩm` (mã SP, tên SP, giá) và `Khuyến mãi` (mã KM, tên KM, mã SP, giảm giá). Câu lệnh SQL nào tìm tên sản phẩm và tên khuyến mãi áp dụng cho sản phẩm đó, chỉ xét những sản phẩm đang có khuyến mãi?

  • A. SELECT Sản_phẩm.TenSP, Khuyến_mãi.TenKM FROM Sản_phẩm LEFT JOIN Khuyến_mãi ON Sản_phẩm.MaSP = Khuyến_mãi.MaSP
  • B. SELECT TenSP, TenKM FROM Sản_phẩm, Khuyến_mãi
  • C. SELECT Sản_phẩm.TenSP FROM Sản_phẩm WHERE EXISTS (SELECT 1 FROM Khuyến_mãi WHERE Khuyến_mãi.MaSP = Sản_phẩm.MaSP)
  • D. SELECT Sản_phẩm.TenSP, Khuyến_mãi.TenKM FROM Sản_phẩm INNER JOIN Khuyến_mãi ON Sản_phẩm.MaSP = Khuyến_mãi.MaSP

Câu 20: Cho bảng `Bài hát` (mã BH, tên BH, mã ca sĩ) và `Ca sĩ` (mã CS, tên CS, quốc gia). Câu lệnh SQL nào tìm tên bài hát và tên ca sĩ, nhưng chỉ cho những ca sĩ đến từ "Việt Nam"?

  • A. SELECT Bài_hát.TenBH, Ca_sĩ.TenCS FROM Bài_hát INNER JOIN Ca_sĩ ON Bài_hát.MaCS = Ca_sĩ.MaCS WHERE Ca_sĩ.QuocGia = "Việt Nam"
  • B. SELECT TenBH, TenCS FROM Bài_hát WHERE Ca_sĩ.QuocGia = "Việt Nam"
  • C. SELECT Bài_hát.TenBH, Ca_sĩ.TenCS FROM Bài_hát LEFT JOIN Ca_sĩ ON Bài_hát.MaCS = Ca_sĩ.MaCS WHERE Ca_sĩ.QuocGia = "Việt Nam"
  • D. SELECT * FROM Bài_hát INNER JOIN Ca_sĩ WHERE QuocGia = "Việt Nam"

Câu 21: Trong cơ sở dữ liệu quản lý nhân sự, bảng `Nhân viên` (manv, hoten, maphong) và `PhongBan` (maphong, tenphong). Câu lệnh SQL nào truy xuất danh sách tên nhân viên và tên phòng ban mà họ thuộc về, sắp xếp kết quả theo tên phòng ban rồi đến tên nhân viên?

  • A. SELECT NV.hoten, PB.tenphong FROM NhanVien NV INNER JOIN PhongBan PB ON NV.maphong = PB.maphong
  • B. SELECT NV.hoten, PB.tenphong FROM NhanVien NV INNER JOIN PhongBan PB ON NV.maphong = PB.maphong ORDER BY PB.tenphong, NV.hoten
  • C. SELECT hoten, tenphong FROM NhanVien, PhongBan ORDER BY tenphong, hoten
  • D. SELECT NV.hoten, PB.tenphong FROM NhanVien NV, PhongBan PB ORDER BY PB.tenphong, NV.hoten

Câu 22: Cho hai bảng `Hóa đơn` (mahd, makh, ngaylap) và `Chi tiết hóa đơn` (mahd, masp, soluong, dongia). Câu lệnh SQL nào tính tổng giá trị mỗi hóa đơn (tổng của số lượng * đơn giá cho tất cả sản phẩm trong hóa đơn)?

  • A. SELECT SUM(cthd.soluong * cthd.dongia) FROM ChiTietHoaDon cthd
  • B. SELECT hd.mahd, cthd.soluong * cthd.dongia FROM HoaDon hd INNER JOIN ChiTietHoaDon cthd ON hd.mahd = cthd.mahd
  • C. SELECT hd.mahd, SUM(cthd.soluong * cthd.dongia) FROM HoaDon hd INNER JOIN ChiTietHoaDon cthd ON hd.mahd = cthd.mahd GROUP BY hd.mahd
  • D. SELECT hd.mahd, SUM(cthd.soluong) * SUM(cthd.dongia) FROM HoaDon hd INNER JOIN ChiTietHoaDon cthd ON hd.mahd = cthd.mahd GROUP BY hd.mahd

Câu 23: Xét bảng `Sinh viên` (masv, tensv, malop) và `Lớp` (malop, tenlop, khoa). Câu lệnh SQL nào tìm tên sinh viên và tên lớp của những sinh viên thuộc khoa "Công nghệ thông tin"?

  • A. SELECT SV.tensv, L.tenlop FROM SinhVien SV INNER JOIN Lop L ON SV.malop = L.malop
  • B. SELECT tensv, tenlop FROM SinhVien, Lop WHERE khoa = "Công nghệ thông tin"
  • C. SELECT SV.tensv, L.tenlop FROM SinhVien SV LEFT JOIN Lop L ON SV.malop = L.malop WHERE L.khoa = "Công nghệ thông tin"
  • D. SELECT SV.tensv, L.tenlop FROM SinhVien SV INNER JOIN Lop L ON SV.malop = L.malop WHERE L.khoa = "Công nghệ thông tin"

Câu 24: Bảng `Nhà xuất bản` (manxb, tennxb, diachi) và `Sách` (masach, tensach, manxb). Câu lệnh SQL nào liệt kê tên nhà xuất bản và số lượng sách mà mỗi nhà xuất bản đã xuất bản?

  • A. SELECT NXB.tennxb, COUNT(*) FROM NhaXuatBan NXB INNER JOIN Sach S ON NXB.manxb = S.manxb GROUP BY NXB.tennxb
  • B. SELECT tennxb, COUNT(*) FROM NhaXuatBan
  • C. SELECT NXB.tennxb, S.masach FROM NhaXuatBan NXB INNER JOIN Sach S ON NXB.manxb = S.manxb
  • D. SELECT NXB.tennxb, SUM(S.masach) FROM NhaXuatBan NXB INNER JOIN Sach S ON NXB.manxb = S.manxb GROUP BY NXB.tennxb

Câu 25: Cho ba bảng: `Sản phẩm` (masp, tensp, gia), `Đơn hàng` (madh, ngaydh, makh), `Chi tiết đơn hàng` (madh, masp, soluong). Câu lệnh SQL nào tìm tên sản phẩm và tổng số lượng sản phẩm đó đã bán được từ tất cả các đơn hàng?

  • A. SELECT SP.tensp, CTDH.soluong FROM SanPham SP INNER JOIN ChiTietDonHang CTDH ON SP.masp = CTDH.masp
  • B. SELECT SP.tensp, SUM(CTDH.soluong) FROM SanPham SP INNER JOIN ChiTietDonHang CTDH ON SP.masp = CTDH.masp GROUP BY SP.tensp
  • C. SELECT tensp, SUM(soluong) FROM SanPham, ChiTietDonHang
  • D. SELECT SP.tensp, SUM(CTDH.soluong) FROM SanPham SP LEFT JOIN ChiTietDonHang CTDH ON SP.masp = CTDH.masp GROUP BY SP.tensp

Câu 26: Bảng `Nhân viên` (manv, hoten, luong, maphong) và `PhongBan` (maphong, tenphong). Câu lệnh SQL nào tìm tên phòng ban và mức lương trung bình của nhân viên trong mỗi phòng ban?

  • A. SELECT PB.tenphong, NV.luong FROM PhongBan PB INNER JOIN NhanVien NV ON PB.maphong = NV.maphong
  • B. SELECT tenphong, AVG(luong) FROM PhongBan, NhanVien
  • C. SELECT PB.tenphong, AVG(NV.luong) FROM PhongBan PB INNER JOIN NhanVien NV ON PB.maphong = NV.maphong GROUP BY PB.tenphong
  • D. SELECT PB.tenphong, SUM(NV.luong) FROM PhongBan PB INNER JOIN NhanVien NV ON PB.maphong = NV.maphong GROUP BY PB.tenphong

Câu 27: Cho lược đồ CSDL: `Khách hàng` (makh, tenkh) và `Đơn hàng` (madh, makh, ngaydh). Câu lệnh SQL nào tìm tên khách hàng và ngày đặt đơn hàng đầu tiên của mỗi khách hàng?

  • A. SELECT KH.tenkh, DH.ngaydh FROM KhachHang KH INNER JOIN DonHang DH ON KH.makh = DH.makh
  • B. SELECT tenkh, MIN(ngaydh) FROM KhachHang, DonHang
  • C. SELECT KH.tenkh, DH.ngaydh FROM KhachHang KH LEFT JOIN DonHang DH ON KH.makh = DH.makh ORDER BY DH.ngaydh ASC
  • D. SELECT KH.tenkh, MIN(DH.ngaydh) FROM KhachHang KH INNER JOIN DonHang DH ON KH.makh = DH.makh GROUP BY KH.tenkh

Câu 28: Bảng `Sản phẩm` (masp, tensp, gia, maloai) và `Loại sản phẩm` (maloai, tenloai). Câu lệnh SQL nào tìm tên loại sản phẩm và số lượng sản phẩm thuộc mỗi loại, chỉ xét các loại sản phẩm có ít nhất 5 sản phẩm?

  • A. SELECT LSP.tenloai, COUNT() FROM LoaiSanPham LSP INNER JOIN SanPham SP ON LSP.maloai = SP.maloai GROUP BY LSP.tenloai HAVING COUNT() >= 5
  • B. SELECT tenloai, COUNT() FROM LoaiSanPham WHERE COUNT() >= 5
  • C. SELECT LSP.tenloai, COUNT() FROM LoaiSanPham LSP INNER JOIN SanPham SP ON LSP.maloai = SP.maloai WHERE COUNT() >= 5 GROUP BY LSP.tenloai
  • D. SELECT LSP.tenloai, SUM() FROM LoaiSanPham LSP INNER JOIN SanPham SP ON LSP.maloai = SP.maloai GROUP BY LSP.tenloai HAVING SUM() >= 5

Câu 29: Cho bảng `Sinh viên` (masv, tensv, ngaysinh) và `Điểm` (masv, mamh, diemso). Câu lệnh SQL nào tìm tên sinh viên và điểm trung bình của mỗi sinh viên?

  • A. SELECT SV.tensv, D.diemso FROM SinhVien SV INNER JOIN Diem D ON SV.masv = D.masv
  • B. SELECT SV.tensv, AVG(D.diemso) FROM SinhVien SV INNER JOIN Diem D ON SV.masv = D.masv GROUP BY SV.tensv
  • C. SELECT tensv, AVG(diemso) FROM SinhVien, Diem
  • D. SELECT SV.tensv, SUM(D.diemso) FROM SinhVien SV INNER JOIN Diem D ON SV.masv = D.masv GROUP BY SV.tensv

Câu 30: Bảng `Dự án` (mada, tenda, kinhphi) và `Nhân viên dự án` (manv, mada, vaitro). Câu lệnh SQL nào tìm tên dự án và số lượng nhân viên tham gia mỗi dự án?

  • A. SELECT DA.tenda, NVDA.manv FROM DuAn DA INNER JOIN NhanVienDuAn NVDA ON DA.mada = NVDA.mada
  • B. SELECT tenda, COUNT(*) FROM DuAn
  • C. SELECT DA.tenda, COUNT(*) FROM DuAn DA INNER JOIN NhanVienDuAn NVDA ON DA.mada = NVDA.mada GROUP BY DA.tenda
  • D. SELECT DA.tenda, SUM(*) FROM DuAn DA INNER JOIN NhanVienDuAn NVDA ON DA.mada = NVDA.mada GROUP BY DA.tenda

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 1: Trong một cơ sở dữ liệu quản lý thư viện, bảng `Sách` chứa thông tin sách (mã sách, tên sách, mã thể loại) và bảng `Thể loại` chứa thông tin thể loại (mã thể loại, tên thể loại). Câu lệnh SQL nào sau đây truy xuất danh sách tên sách và tên thể loại tương ứng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 2: Xét hai bảng `Nhân viên` (mã NV, tên NV, phòng ban) và `Phòng ban` (mã phòng, tên phòng, trưởng phòng). Để tìm tên nhân viên và tên phòng ban của nhân viên 'Nguyễn Văn A', câu lệnh SQL nào hiệu quả nhất?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 3: Trong cơ sở dữ liệu bán hàng, bảng `Sản phẩm` (mã SP, tên SP, giá) và `Đơn hàng` (mã ĐH, mã SP, số lượng). Câu lệnh SQL nào tính tổng số lượng của mỗi sản phẩm đã bán?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 4: Cho hai bảng `Học sinh` (mã HS, tên HS, lớp) và `Điểm` (mã HS, môn học, điểm số). Câu lệnh SQL nào liệt kê tên học sinh và điểm môn 'Toán' của học sinh đó, chỉ xét những học sinh có điểm môn Toán?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 5: Bảng `Giáo viên` (mã GV, tên GV, mã khoa) và `Khoa` (mã khoa, tên khoa). Câu lệnh SQL nào tìm tên giáo viên và tên khoa của tất cả giáo viên, kể cả giáo viên chưa được gán khoa?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 6: Cho lược đồ CSDL: `Khách hàng` (mã KH, tên KH) và `Đơn hàng` (mã ĐH, mã KH, ngày đặt). Câu lệnh SQL nào tìm tên khách hàng và số đơn hàng của mỗi khách hàng?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 7: Xét bảng `Bài viết` (mã bài viết, tiêu đề, mã tác giả) và `Tác giả` (mã tác giả, tên tác giả). Câu lệnh SQL nào liệt kê tiêu đề bài viết và tên tác giả, sắp xếp theo tên tác giả?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 8: Cho ba bảng: `Sinh viên` (mã SV, tên SV), `Môn học` (mã MH, tên MH), và `Đăng ký` (mã SV, mã MH, học kỳ). Câu lệnh SQL nào truy vấn tên sinh viên và tên môn học mà sinh viên đó đã đăng ký trong học kỳ 'HK1-2023'?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 9: Trong cơ sở dữ liệu về sản phẩm và nhà cung cấp, bảng `Sản phẩm` (mã SP, tên SP, mã NCC) và `Nhà cung cấp` (mã NCC, tên NCC, địa chỉ). Câu lệnh SQL nào tìm tên sản phẩm và tên nhà cung cấp cho những sản phẩm có giá trên 100.000 VNĐ?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 10: Bảng `Phim` (mã phim, tên phim, mã đạo diễn) và `Đạo diễn` (mã đạo diễn, tên đạo diễn). Câu lệnh SQL nào đếm số lượng phim mà mỗi đạo diễn đã đạo diễn?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 11: Trong một hệ thống quản lý bán vé máy bay, bảng `Chuyến bay` (mã CB, điểm đi, điểm đến) và `Vé` (mã vé, mã CB, giá vé). Câu lệnh SQL nào tìm điểm đi, điểm đến của các chuyến bay có ít nhất 20 vé đã bán?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 12: Cho bảng `Dự án` (mã DA, tên DA, trưởng phòng) và `Phòng ban` (mã phòng, tên phòng). Câu lệnh SQL nào tìm tên dự án và tên phòng ban quản lý dự án đó?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 13: Bảng `Sách` (mã sách, tên sách, năm xuất bản) và `Tác giả` (mã tác giả, tên tác giả, mã sách). Câu lệnh SQL nào liệt kê tên sách và tên tác giả, nhưng chỉ cho những sách xuất bản sau năm 2020?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 14: Cho lược đồ CSDL: `Nhân viên` (mã NV, tên NV, lương) và `Kỹ năng` (mã KN, tên KN, mã NV). Câu lệnh SQL nào tìm tên nhân viên và tên kỹ năng của họ, chỉ xét những nhân viên có lương trên 10 triệu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 15: Bảng `Khóa học` (mã KH, tên KH, học phí) và `Học viên` (mã HV, tên HV, mã KH). Câu lệnh SQL nào tìm tên khóa học và tên học viên đã đăng ký khóa học đó, nhưng chỉ cho những khóa học có học phí dưới 500.000 VNĐ?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 16: Cho bảng `Sản phẩm` (mã SP, tên SP, giá, mã loại) và `Loại sản phẩm` (mã loại, tên loại). Câu lệnh SQL nào truy xuất tên sản phẩm và tên loại sản phẩm, sắp xếp theo tên loại sản phẩm và sau đó theo giá sản phẩm (giá giảm dần)?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 17: Xét bảng `Nhân viên` (mã NV, tên NV, mã phòng) và `Phòng ban` (mã phòng, tên phòng, địa điểm). Câu lệnh SQL nào tìm tên nhân viên, tên phòng ban và địa điểm phòng ban của tất cả nhân viên, kể cả nhân viên chưa được gán phòng ban?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 18: Cho ba bảng: `Giáo viên` (mã GV, tên GV), `Môn học` (mã MH, tên MH), `Giảng dạy` (mã GV, mã MH, năm học). Câu lệnh SQL nào truy vấn tên giáo viên và số lượng môn học mà mỗi giáo viên dạy trong năm học '2023-2024'?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 19: Bảng `Sản phẩm` (mã SP, tên SP, giá) và `Khuyến mãi` (mã KM, tên KM, mã SP, giảm giá). Câu lệnh SQL nào tìm tên sản phẩm và tên khuyến mãi áp dụng cho sản phẩm đó, chỉ xét những sản phẩm đang có khuyến mãi?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 20: Cho bảng `Bài hát` (mã BH, tên BH, mã ca sĩ) và `Ca sĩ` (mã CS, tên CS, quốc gia). Câu lệnh SQL nào tìm tên bài hát và tên ca sĩ, nhưng chỉ cho những ca sĩ đến từ 'Việt Nam'?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 21: Trong cơ sở dữ liệu quản lý nhân sự, bảng `Nhân viên` (manv, hoten, maphong) và `PhongBan` (maphong, tenphong). Câu lệnh SQL nào truy xuất danh sách tên nhân viên và tên phòng ban mà họ thuộc về, sắp xếp kết quả theo tên phòng ban rồi đến tên nhân viên?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 22: Cho hai bảng `Hóa đơn` (mahd, makh, ngaylap) và `Chi tiết hóa đơn` (mahd, masp, soluong, dongia). Câu lệnh SQL nào tính tổng giá trị mỗi hóa đơn (tổng của số lượng * đơn giá cho tất cả sản phẩm trong hóa đơn)?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 23: Xét bảng `Sinh viên` (masv, tensv, malop) và `Lớp` (malop, tenlop, khoa). Câu lệnh SQL nào tìm tên sinh viên và tên lớp của những sinh viên thuộc khoa 'Công nghệ thông tin'?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 24: Bảng `Nhà xuất bản` (manxb, tennxb, diachi) và `Sách` (masach, tensach, manxb). Câu lệnh SQL nào liệt kê tên nhà xuất bản và số lượng sách mà mỗi nhà xuất bản đã xuất bản?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 25: Cho ba bảng: `Sản phẩm` (masp, tensp, gia), `Đơn hàng` (madh, ngaydh, makh), `Chi tiết đơn hàng` (madh, masp, soluong). Câu lệnh SQL nào tìm tên sản phẩm và tổng số lượng sản phẩm đó đã bán được từ tất cả các đơn hàng?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 26: Bảng `Nhân viên` (manv, hoten, luong, maphong) và `PhongBan` (maphong, tenphong). Câu lệnh SQL nào tìm tên phòng ban và mức lương trung bình của nhân viên trong mỗi phòng ban?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 27: Cho lược đồ CSDL: `Khách hàng` (makh, tenkh) và `Đơn hàng` (madh, makh, ngaydh). Câu lệnh SQL nào tìm tên khách hàng và ngày đặt đơn hàng đầu tiên của mỗi khách hàng?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 28: Bảng `Sản phẩm` (masp, tensp, gia, maloai) và `Loại sản phẩm` (maloai, tenloai). Câu lệnh SQL nào tìm tên loại sản phẩm và số lượng sản phẩm thuộc mỗi loại, chỉ xét các loại sản phẩm có ít nhất 5 sản phẩm?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 29: Cho bảng `Sinh viên` (masv, tensv, ngaysinh) và `Điểm` (masv, mamh, diemso). Câu lệnh SQL nào tìm tên sinh viên và điểm trung bình của mỗi sinh viên?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 3

Câu 30: Bảng `Dự án` (mada, tenda, kinhphi) và `Nhân viên dự án` (manv, mada, vaitro). Câu lệnh SQL nào tìm tên dự án và số lượng nhân viên tham gia mỗi dự án?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 04

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 04 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng phép kết nối (JOIN) giữa các bảng?

  • A. Khi chỉ muốn truy xuất dữ liệu từ một bảng duy nhất.
  • B. Khi muốn truy xuất dữ liệu từ nhiều bảng có mối quan hệ với nhau.
  • C. Khi muốn tạo bảng mới từ dữ liệu của bảng hiện có.
  • D. Khi muốn sắp xếp dữ liệu trong một bảng.

Câu 2: Cho hai bảng "SinhVien" (MaSV, TenSV, MaKhoa) và "Khoa" (MaKhoa, TenKhoa). Câu lệnh SQL nào sau đây truy xuất danh sách tên sinh viên và tên khoa mà sinh viên đó theo học?

  • A. SELECT TenSV, TenKhoa FROM SinhVien, Khoa WHERE MaSV = MaKhoa
  • B. SELECT TenSV, TenKhoa FROM SinhVien INNER JOIN Khoa
  • C. SELECT SinhVien.TenSV, Khoa.TenKhoa FROM SinhVien INNER JOIN Khoa ON SinhVien.MaKhoa = Khoa.MaKhoa
  • D. SELECT TenSV, TenKhoa FROM SinhVien LEFT JOIN Khoa ON SinhVien.MaKhoa = Khoa.MaKhoa

Câu 3: Phép kết nối nào trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải? Nếu không có bản ghi phù hợp, các cột từ bảng bên phải sẽ chứa giá trị NULL.

  • A. LEFT JOIN
  • B. INNER JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 4: Xét hai bảng "DonHang" (MaDH, MaKH, NgayDatHang) và "KhachHang" (MaKH, TenKH). Câu lệnh SQL `SELECT DonHang.MaDH, KhachHang.TenKH FROM DonHang RIGHT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH WHERE DonHang.MaDH IS NULL;` sẽ trả về thông tin gì?

  • A. Danh sách tất cả các đơn hàng và tên khách hàng tương ứng.
  • B. Danh sách tên khách hàng chưa có đơn hàng nào.
  • C. Danh sách đơn hàng không có thông tin khách hàng.
  • D. Lỗi cú pháp, câu lệnh không thực thi được.

Câu 5: Trong SQL, mệnh đề `ON` được sử dụng trong phép JOIN để làm gì?

  • A. Lọc các bản ghi sau khi đã kết nối các bảng.
  • B. Sắp xếp dữ liệu sau khi kết nối.
  • C. Xác định điều kiện kết nối giữa các bảng.
  • D. Chọn các cột cần hiển thị trong kết quả.

Câu 6: Giả sử bạn có bảng "SanPham" (MaSP, TenSP, MaLoaiSP) và "LoaiSanPham" (MaLoaiSP, TenLoaiSP). Bạn muốn liệt kê tất cả sản phẩm cùng với tên loại sản phẩm của chúng. Nếu có sản phẩm chưa được gán loại, bạn vẫn muốn hiển thị sản phẩm đó nhưng cột "TenLoaiSP" sẽ để trống. Loại JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 7: Cho bảng "NhanVien" (MaNV, TenNV, MaPhongBan) và "PhongBan" (MaPhongBan, TenPhongBan). Câu lệnh `SELECT NhanVien.TenNV, PhongBan.TenPhongBan FROM NhanVien CROSS JOIN PhongBan;` sẽ trả về kết quả gì?

  • A. Danh sách nhân viên và phòng ban của nhân viên đó.
  • B. Danh sách nhân viên thuộc một phòng ban cụ thể.
  • C. Danh sách phòng ban và nhân viên quản lý phòng ban đó.
  • D. Tích Descartes của hai bảng, mỗi nhân viên kết hợp với mọi phòng ban.

Câu 8: Trong một truy vấn JOIN phức tạp liên quan đến nhiều bảng, thứ tự kết nối các bảng có ảnh hưởng đến hiệu suất truy vấn không?

  • A. Có, thứ tự kết nối có thể ảnh hưởng đáng kể đến hiệu suất.
  • B. Không, thứ tự kết nối không ảnh hưởng đến hiệu suất.
  • C. Chỉ ảnh hưởng khi kết nối trên các bảng rất lớn.
  • D. Chỉ ảnh hưởng khi sử dụng RIGHT JOIN hoặc FULL OUTER JOIN.

Câu 9: Để kết nối một bảng với chính nó (ví dụ: bảng "NhanVien" có cột "MaNVQL" tham chiếu đến "MaNV" của nhân viên quản lý), chúng ta sử dụng kỹ thuật JOIN nào?

  • A. INNER JOIN với cùng tên bảng
  • B. Self-JOIN (JOIN bảng với chính nó)
  • C. CROSS JOIN với cùng tên bảng
  • D. NATURAL JOIN với cùng tên bảng

Câu 10: Câu lệnh SQL nào sau đây được sử dụng để đổi tên bảng hoặc cột trong kết quả truy vấn, giúp truy vấn dễ đọc và quản lý hơn khi làm việc với JOIN?

  • A. RENAME
  • B. CHANGE
  • C. AS (bí danh)
  • D. MODIFY

Câu 11: Cho ba bảng "SinhVien" (MaSV, TenSV, MaLop), "LopHoc" (MaLop, TenLop, MaKhoa), và "Khoa" (MaKhoa, TenKhoa). Để truy xuất tên sinh viên, tên lớp và tên khoa, bạn cần sử dụng tối thiểu bao nhiêu phép JOIN?

  • A. 0
  • B. 2
  • C. 3
  • D. 1

Câu 12: Khi sử dụng INNER JOIN giữa hai bảng "A" và "B", điều gì xảy ra nếu một bản ghi trong bảng "A" không có bản ghi phù hợp trong bảng "B" dựa trên điều kiện JOIN?

  • A. Bản ghi từ bảng "A" vẫn được bao gồm trong kết quả, các cột từ "B" là NULL.
  • B. Bản ghi từ bảng "B" vẫn được bao gồm trong kết quả, các cột từ "A" là NULL.
  • C. Bản ghi từ bảng "A" sẽ bị loại khỏi kết quả.
  • D. Truy vấn sẽ báo lỗi và không thực thi được.

Câu 13: Trong SQL, phép `NATURAL JOIN` khác với `INNER JOIN ON` như thế nào?

  • A. `NATURAL JOIN` tự động kết nối dựa trên các cột có tên giống nhau, còn `INNER JOIN ON` yêu cầu chỉ định rõ điều kiện kết nối.
  • B. `NATURAL JOIN` chỉ hoạt động với hai bảng, còn `INNER JOIN ON` có thể dùng cho nhiều bảng.
  • C. `NATURAL JOIN` luôn nhanh hơn `INNER JOIN ON`.
  • D. `NATURAL JOIN` chỉ trả về các cột chung, còn `INNER JOIN ON` trả về tất cả các cột.

Câu 14: Cho bảng "Sach" (MaSach, TenSach, MaTheLoai) và "TheLoai" (MaTheLoai, TenTheLoai). Viết câu lệnh SQL sử dụng INNER JOIN để lấy danh sách tên sách và tên thể loại của những sách có thể loại.

  • A. SELECT Sach.TenSach, TheLoai.TenTheLoai FROM Sach INNER JOIN TheLoai ON Sach.MaTheLoai = TheLoai.MaTheLoai
  • B. SELECT TenSach, TenTheLoai FROM Sach, TheLoai WHERE Sach.MaTheLoai = TheLoai.MaTheLoai
  • C. SELECT Sach.TenSach, TheLoai.TenTheLoai FROM Sach LEFT JOIN TheLoai ON Sach.MaTheLoai = TheLoai.MaTheLoai
  • D. SELECT TenSach, TenTheLoai FROM Sach NATURAL JOIN TheLoai

Câu 15: Trong trường hợp nào bạn nên ưu tiên sử dụng LEFT JOIN thay vì INNER JOIN?

  • A. Khi muốn lấy dữ liệu từ cả hai bảng chỉ khi có sự trùng khớp.
  • B. Khi muốn lấy tất cả dữ liệu từ bảng bên trái và dữ liệu phù hợp từ bảng bên phải, kể cả khi không có sự trùng khớp hoàn toàn.
  • C. Khi muốn lấy tất cả dữ liệu từ cả hai bảng, bất kể có sự trùng khớp hay không.
  • D. Khi muốn lấy dữ liệu chỉ từ bảng bên phải.

Câu 16: Cho bảng "KhoaHoc" (MaKH, TenKH, HocPhi) và "HocVien" (MaHV, TenHV, MaKH). Nếu muốn tính tổng học phí thu được từ mỗi khóa học, bạn sẽ sử dụng phép JOIN nào kết hợp với hàm tổng hợp?

  • A. CROSS JOIN và SUM()
  • B. LEFT JOIN và COUNT()
  • C. INNER JOIN, GROUP BY và SUM()
  • D. RIGHT JOIN và AVG()

Câu 17: Điều gì sẽ xảy ra nếu bạn thực hiện INNER JOIN hai bảng mà không có mệnh đề `ON` hoặc `USING` (trong một số hệ CSDL)?

  • A. Hệ thống sẽ tự động xác định cột kết nối.
  • B. Sẽ thực hiện LEFT JOIN mặc định.
  • C. Sẽ thực hiện NATURAL JOIN mặc định.
  • D. Sẽ gây ra lỗi hoặc tương đương với CROSS JOIN trong một số hệ CSDL.

Câu 18: Bạn có bảng "Phim" (MaPhim, TenPhim, MaTheLoai) và "TheLoaiPhim" (MaTheLoai, TenTheLoai). Câu lệnh `SELECT Phim.TenPhim, TheLoaiPhim.TenTheLoai FROM Phim FULL OUTER JOIN TheLoaiPhim ON Phim.MaTheLoai = TheLoaiPhim.MaTheLoai;` sẽ trả về gì?

  • A. Chỉ phim và thể loại phim có sự liên kết.
  • B. Chỉ phim không có thể loại phim.
  • C. Tất cả phim và tất cả thể loại phim, các cặp không liên kết sẽ có giá trị NULL.
  • D. Lỗi cú pháp, câu lệnh không thực thi được.

Câu 19: Trong bối cảnh thực tế, ví dụ nào sau đây minh họa rõ nhất sự cần thiết của việc sử dụng JOIN trong truy xuất dữ liệu?

  • A. Liệt kê danh sách tất cả các sản phẩm trong một cửa hàng.
  • B. Hiển thị thông tin đơn hàng bao gồm tên khách hàng, chi tiết sản phẩm và ngày đặt hàng từ các bảng "KhachHang", "DonHang", "ChiTietDonHang", "SanPham".
  • C. Tìm kiếm sản phẩm có giá cao nhất trong bảng "SanPham".
  • D. Thêm một sản phẩm mới vào bảng "SanPham".

Câu 20: Khi thiết kế cơ sở dữ liệu và xác định mối quan hệ giữa các bảng, việc sử dụng khóa ngoại có vai trò quan trọng như thế nào đối với phép JOIN?

  • A. Khóa ngoại xác định cột được sử dụng để liên kết các bảng trong phép JOIN.
  • B. Khóa ngoại giúp tăng tốc độ truy vấn JOIN.
  • C. Khóa ngoại không liên quan đến phép JOIN.
  • D. Khóa ngoại chỉ dùng để đảm bảo toàn vẹn dữ liệu, không ảnh hưởng đến JOIN.

Câu 21: Cho bảng "SinhVien" (MaSV, TenSV, DiemTB) và "KetQua" (MaSV, MaMH, Diem). Bạn muốn tìm ra những sinh viên có điểm trung bình lớn hơn 8.0 và điểm môn "Toán" cũng lớn hơn 8.0. Câu truy vấn nào sau đây là đúng?

  • A. SELECT TenSV FROM SinhVien, KetQua WHERE DiemTB > 8.0 AND Diem > 8.0 AND MaMH = "Toan"
  • B. SELECT TenSV FROM SinhVien INNER JOIN KetQua ON SinhVien.MaSV = KetQua.MaSV WHERE DiemTB > 8.0 OR Diem > 8.0 AND MaMH = "Toan"
  • C. SELECT SinhVien.TenSV FROM SinhVien INNER JOIN KetQua ON SinhVien.MaSV = KetQua.MaSV WHERE SinhVien.DiemTB > 8.0 AND KetQua.Diem > 8.0 AND KetQua.MaMH = "Toan"
  • D. SELECT TenSV FROM SinhVien LEFT JOIN KetQua ON SinhVien.MaSV = KetQua.MaSV WHERE DiemTB > 8.0 AND Diem > 8.0 AND MaMH = "Toan"

Câu 22: Trong SQL, khi nào bạn nên sử dụng `UNION` thay vì `JOIN`?

  • A. Khi muốn kết hợp dữ liệu từ các cột khác nhau của cùng một bảng.
  • B. Khi muốn kết hợp các hàng từ nhiều bảng có cấu trúc tương tự thành một tập kết quả duy nhất.
  • C. Khi muốn kết nối các bảng dựa trên khóa ngoại.
  • D. Khi muốn lọc dữ liệu từ một bảng duy nhất.

Câu 23: Cho bảng "NhanVien" với thông tin nhân viên và "DuAn" với thông tin dự án. Một nhân viên có thể tham gia nhiều dự án, mối quan hệ này là quan hệ "nhiều-nhiều". Để truy vấn thông tin nhân viên và dự án họ tham gia, bạn cần thêm bảng trung gian nào?

  • A. Không cần bảng trung gian, dùng JOIN trực tiếp.
  • B. Bảng "PhongBan" để liên kết nhân viên và dự án.
  • C. Bảng "PhanCong" (hoặc tương tự) để liên kết "NhanVien" và "DuAn".
  • D. Bảng "Luong" để liên kết thông tin lương với dự án.

Câu 24: Câu lệnh SQL nào sau đây sử dụng phép tự kết nối (Self-Join) để tìm ra tất cả các cặp nhân viên cùng phòng ban trong bảng "NhanVien" (MaNV, TenNV, MaPhongBan)?

  • A. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaNV = NV2.MaNV
  • B. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 CROSS JOIN NhanVien NV2
  • C. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 LEFT JOIN NhanVien NV2 ON NV1.MaPhongBan = NV2.MaPhongBan WHERE NV1.MaNV != NV2.MaNV
  • D. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaPhongBan = NV2.MaPhongBan AND NV1.MaNV != NV2.MaNV

Câu 25: Khi nào việc sử dụng `WHERE` clause sau `JOIN` clause là cần thiết trong truy vấn SQL?

  • A. Luôn cần thiết để câu lệnh JOIN hoạt động.
  • B. Khi muốn lọc kết quả trả về dựa trên điều kiện cụ thể sau khi các bảng đã được kết nối.
  • C. Chỉ cần thiết khi sử dụng LEFT JOIN hoặc RIGHT JOIN.
  • D. Không cần thiết, vì `ON` clause đã đủ để lọc dữ liệu.

Câu 26: Cho bảng "SanPham" (MaSP, TenSP, Gia) và "KhuyenMai" (MaKM, MaSP, NgayBD, NgayKT, PhanTramKM). Làm thế nào để truy vấn danh sách sản phẩm và thông tin khuyến mãi hiện tại (tính đến ngày hiện tại)?

  • A. SELECT SanPham.TenSP, KhuyenMai.PhanTramKM FROM SanPham INNER JOIN KhuyenMai ON SanPham.MaSP = KhuyenMai.MaSP WHERE NgayBD <= CURRENT_DATE AND NgayKT >= CURRENT_DATE
  • B. SELECT SanPham.TenSP, KhuyenMai.PhanTramKM FROM SanPham LEFT JOIN KhuyenMai ON SanPham.MaSP = KhuyenMai.MaSP WHERE NgayKT < CURRENT_DATE
  • C. SELECT SanPham.TenSP, KhuyenMai.PhanTramKM FROM SanPham RIGHT JOIN KhuyenMai ON SanPham.MaSP = KhuyenMai.MaSP
  • D. SELECT SanPham.TenSP, KhuyenMai.PhanTramKM FROM SanPham CROSS JOIN KhuyenMai WHERE NgayBD = CURRENT_DATE

Câu 27: Ưu điểm chính của việc sử dụng phép JOIN trong SQL so với việc truy vấn dữ liệu từ nhiều bảng một cách riêng lẻ và xử lý kết quả ở phía ứng dụng là gì?

  • A. Dễ viết câu lệnh hơn.
  • B. Giảm tải cho ứng dụng.
  • C. Tăng hiệu suất truy vấn và giảm lượng dữ liệu truyền tải giữa CSDL và ứng dụng.
  • D. Không có ưu điểm, thực tế là phức tạp hơn.

Câu 28: Trong SQL, phép `OUTER JOIN` bao gồm những loại phép JOIN nào?

  • A. INNER JOIN và LEFT JOIN
  • B. INNER JOIN và RIGHT JOIN
  • C. LEFT JOIN và NATURAL JOIN
  • D. LEFT JOIN, RIGHT JOIN và FULL OUTER JOIN

Câu 29: Khi thiết kế truy vấn JOIN, điều quan trọng nhất cần xác định để đảm bảo truy vấn trả về kết quả đúng là gì?

  • A. Loại phép JOIN (INNER, LEFT, RIGHT...).
  • B. Điều kiện kết nối chính xác giữa các bảng (thường dựa trên khóa chính và khóa ngoại).
  • C. Thứ tự các bảng trong mệnh đề FROM.
  • D. Sử dụng bí danh cho bảng và cột.

Câu 30: Giả sử bạn có bảng "BaiViet" (MaBV, TieuDe, MaNguoiDung) và "NguoiDung" (MaND, TenND). Bạn muốn đếm số lượng bài viết của mỗi người dùng, kể cả những người dùng chưa có bài viết nào. Phép JOIN nào phù hợp nhất để thực hiện truy vấn này?

  • A. INNER JOIN
  • B. RIGHT JOIN
  • C. LEFT JOIN
  • D. FULL OUTER JOIN

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng phép kết nối (JOIN) giữa các bảng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 2: Cho hai bảng 'SinhVien' (MaSV, TenSV, MaKhoa) và 'Khoa' (MaKhoa, TenKhoa). Câu lệnh SQL nào sau đây truy xuất danh sách tên sinh viên và tên khoa mà sinh viên đó theo học?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 3: Phép kết nối nào trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải? Nếu không có bản ghi phù hợp, các cột từ bảng bên phải sẽ chứa giá trị NULL.

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 4: Xét hai bảng 'DonHang' (MaDH, MaKH, NgayDatHang) và 'KhachHang' (MaKH, TenKH). Câu lệnh SQL `SELECT DonHang.MaDH, KhachHang.TenKH FROM DonHang RIGHT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH WHERE DonHang.MaDH IS NULL;` sẽ trả về thông tin gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 5: Trong SQL, mệnh đề `ON` được sử dụng trong phép JOIN để làm gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 6: Giả sử bạn có bảng 'SanPham' (MaSP, TenSP, MaLoaiSP) và 'LoaiSanPham' (MaLoaiSP, TenLoaiSP). Bạn muốn liệt kê tất cả sản phẩm cùng với tên loại sản phẩm của chúng. Nếu có sản phẩm chưa được gán loại, bạn vẫn muốn hiển thị sản phẩm đó nhưng cột 'TenLoaiSP' sẽ để trống. Loại JOIN nào phù hợp nhất?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 7: Cho bảng 'NhanVien' (MaNV, TenNV, MaPhongBan) và 'PhongBan' (MaPhongBan, TenPhongBan). Câu lệnh `SELECT NhanVien.TenNV, PhongBan.TenPhongBan FROM NhanVien CROSS JOIN PhongBan;` sẽ trả về kết quả gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 8: Trong một truy vấn JOIN phức tạp liên quan đến nhiều bảng, thứ tự kết nối các bảng có ảnh hưởng đến hiệu suất truy vấn không?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 9: Để kết nối một bảng với chính nó (ví dụ: bảng 'NhanVien' có cột 'MaNVQL' tham chiếu đến 'MaNV' của nhân viên quản lý), chúng ta sử dụng kỹ thuật JOIN nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 10: Câu lệnh SQL nào sau đây được sử dụng để đổi tên bảng hoặc cột trong kết quả truy vấn, giúp truy vấn dễ đọc và quản lý hơn khi làm việc với JOIN?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 11: Cho ba bảng 'SinhVien' (MaSV, TenSV, MaLop), 'LopHoc' (MaLop, TenLop, MaKhoa), và 'Khoa' (MaKhoa, TenKhoa). Để truy xuất tên sinh viên, tên lớp và tên khoa, bạn cần sử dụng tối thiểu bao nhiêu phép JOIN?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 12: Khi sử dụng INNER JOIN giữa hai bảng 'A' và 'B', điều gì xảy ra nếu một bản ghi trong bảng 'A' không có bản ghi phù hợp trong bảng 'B' dựa trên điều kiện JOIN?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 13: Trong SQL, phép `NATURAL JOIN` khác với `INNER JOIN ON` như thế nào?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 14: Cho bảng 'Sach' (MaSach, TenSach, MaTheLoai) và 'TheLoai' (MaTheLoai, TenTheLoai). Viết câu lệnh SQL sử dụng INNER JOIN để lấy danh sách tên sách và tên thể loại của những sách có thể loại.

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 15: Trong trường hợp nào bạn nên ưu tiên sử dụng LEFT JOIN thay vì INNER JOIN?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 16: Cho bảng 'KhoaHoc' (MaKH, TenKH, HocPhi) và 'HocVien' (MaHV, TenHV, MaKH). Nếu muốn tính tổng học phí thu được từ mỗi khóa học, bạn sẽ sử dụng phép JOIN nào kết hợp với hàm tổng hợp?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 17: Điều gì sẽ xảy ra nếu bạn thực hiện INNER JOIN hai bảng mà không có mệnh đề `ON` hoặc `USING` (trong một số hệ CSDL)?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 18: Bạn có bảng 'Phim' (MaPhim, TenPhim, MaTheLoai) và 'TheLoaiPhim' (MaTheLoai, TenTheLoai). Câu lệnh `SELECT Phim.TenPhim, TheLoaiPhim.TenTheLoai FROM Phim FULL OUTER JOIN TheLoaiPhim ON Phim.MaTheLoai = TheLoaiPhim.MaTheLoai;` sẽ trả về gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 19: Trong bối cảnh thực tế, ví dụ nào sau đây minh họa rõ nhất sự cần thiết của việc sử dụng JOIN trong truy xuất dữ liệu?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 20: Khi thiết kế cơ sở dữ liệu và xác định mối quan hệ giữa các bảng, việc sử dụng khóa ngoại có vai trò quan trọng như thế nào đối với phép JOIN?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 21: Cho bảng 'SinhVien' (MaSV, TenSV, DiemTB) và 'KetQua' (MaSV, MaMH, Diem). Bạn muốn tìm ra những sinh viên có điểm trung bình lớn hơn 8.0 và điểm môn 'Toán' cũng lớn hơn 8.0. Câu truy vấn nào sau đây là đúng?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 22: Trong SQL, khi nào bạn nên sử dụng `UNION` thay vì `JOIN`?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 23: Cho bảng 'NhanVien' với thông tin nhân viên và 'DuAn' với thông tin dự án. Một nhân viên có thể tham gia nhiều dự án, mối quan hệ này là quan hệ 'nhiều-nhiều'. Để truy vấn thông tin nhân viên và dự án họ tham gia, bạn cần thêm bảng trung gian nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 24: Câu lệnh SQL nào sau đây sử dụng phép tự kết nối (Self-Join) để tìm ra tất cả các cặp nhân viên cùng phòng ban trong bảng 'NhanVien' (MaNV, TenNV, MaPhongBan)?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 25: Khi nào việc sử dụng `WHERE` clause sau `JOIN` clause là cần thiết trong truy vấn SQL?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 26: Cho bảng 'SanPham' (MaSP, TenSP, Gia) và 'KhuyenMai' (MaKM, MaSP, NgayBD, NgayKT, PhanTramKM). Làm thế nào để truy vấn danh sách sản phẩm và thông tin khuyến mãi hiện tại (tính đến ngày hiện tại)?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 27: Ưu điểm chính của việc sử dụng phép JOIN trong SQL so với việc truy vấn dữ liệu từ nhiều bảng một cách riêng lẻ và xử lý kết quả ở phía ứng dụng là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 28: Trong SQL, phép `OUTER JOIN` bao gồm những loại phép JOIN nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 29: Khi thiết kế truy vấn JOIN, điều quan trọng nhất cần xác định để đảm bảo truy vấn trả về kết quả đúng là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 4

Câu 30: Giả sử bạn có bảng 'BaiViet' (MaBV, TieuDe, MaNguoiDung) và 'NguoiDung' (MaND, TenND). Bạn muốn đếm số lượng bài viết của mỗi người dùng, kể cả những người dùng chưa có bài viết nào. Phép JOIN nào phù hợp nhất để thực hiện truy vấn này?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 05

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 05 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng liên kết bảng (JOIN)?

  • A. Khi muốn tạo một bảng mới từ dữ liệu của một bảng đã có.
  • B. Khi muốn truy xuất dữ liệu từ nhiều bảng có mối quan hệ với nhau.
  • C. Khi muốn sắp xếp dữ liệu trong một bảng theo thứ tự nhất định.
  • D. Khi muốn lọc dữ liệu trong một bảng dựa trên một điều kiện cụ thể.

Câu 2: Cho hai bảng "HocSinh" (maHS, tenHS, maLop) và "Lop" (maLop, tenLop). Câu lệnh SQL nào sau đây sẽ trả về danh sách tên học sinh và tên lớp của học sinh đó?

  • A. SELECT tenHS, tenLop FROM HocSinh INNER JOIN Lop ON HocSinh.maLop = Lop.maLop
  • B. SELECT tenHS, tenLop FROM HocSinh WHERE HocSinh.maLop = Lop.maLop
  • C. SELECT tenHS, tenLop FROM HocSinh CROSS JOIN Lop
  • D. SELECT tenHS, tenLop FROM HocSinh LEFT JOIN Lop ON HocSinh.maHS = Lop.maLop

Câu 3: Trong câu lệnh `SELECT * FROM A LEFT JOIN B ON A.id = B.id`, kiểu liên kết LEFT JOIN có ý nghĩa gì?

  • A. Chỉ trả về các bản ghi có khóa "id" chung ở cả bảng A và bảng B.
  • B. Chỉ trả về các bản ghi có khóa "id" ở bảng B mà không có ở bảng A.
  • C. Trả về tất cả các bản ghi từ bảng A và các bản ghi phù hợp từ bảng B. Nếu không có bản ghi phù hợp ở B, các cột của B sẽ là NULL.
  • D. Trả về tất cả các bản ghi từ bảng B và các bản ghi phù hợp từ bảng A. Nếu không có bản ghi phù hợp ở A, các cột của A sẽ là NULL.

Câu 4: Xét hai bảng "SanPham" (maSP, tenSP, maLoai) và "LoaiSanPham" (maLoai, tenLoai). Để liệt kê tất cả sản phẩm cùng với tên loại sản phẩm, ngay cả khi một số sản phẩm chưa được gán loại, bạn nên sử dụng kiểu liên kết nào?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 5: Trong SQL, mệnh đề `ON` được sử dụng trong câu lệnh JOIN để làm gì?

  • A. Lọc kết quả trả về sau khi đã liên kết các bảng.
  • B. Sắp xếp kết quả trả về sau khi đã liên kết các bảng.
  • C. Chọn các cột sẽ hiển thị trong kết quả trả về.
  • D. Xác định điều kiện để liên kết các hàng từ các bảng khác nhau.

Câu 6: Cho ba bảng "DonHang" (maDH, maKH, ngayDat), "KhachHang" (maKH, tenKH) và "ChiTietDH" (maDH, maSP, soLuong). Để truy vấn danh sách các đơn hàng, bao gồm tên khách hàng và tổng số lượng sản phẩm trong mỗi đơn hàng, bạn cần liên kết bao nhiêu bảng?

  • A. Một bảng
  • B. Hai bảng
  • C. Ba bảng
  • D. Không cần liên kết bảng

Câu 7: Khi thực hiện liên kết bảng, việc sử dụng bí danh (alias) cho tên bảng có lợi ích gì?

  • A. Tăng tốc độ thực thi câu lệnh truy vấn.
  • B. Làm cho câu lệnh SQL ngắn gọn và dễ đọc hơn, đặc biệt khi có nhiều bảng hoặc tên bảng dài.
  • C. Giúp bảo mật dữ liệu trong các bảng liên kết.
  • D. Bắt buộc để thực hiện liên kết bảng trong SQL.

Câu 8: Cho bảng "NhanVien" (maNV, tenNV, maPhongBan) và "PhongBan" (maPB, tenPB). Câu lệnh `SELECT NV.tenNV, PB.tenPB FROM NhanVien NV INNER JOIN PhongBan PB ON NV.maPhongBan = PB.maPB` sử dụng bí danh nào cho bảng "NhanVien" và "PhongBan"?

  • A. NV và PB
  • B. NhanVien và PhongBan
  • C. tenNV và tenPB
  • D. maNV và maPB

Câu 9: Giả sử bạn muốn tìm tất cả các khóa học (bảng "KhoaHoc") và thông tin giảng viên (bảng "GiangVien") cho những khóa học có giảng viên phụ trách. Kiểu liên kết nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 10: Câu lệnh SQL nào sau đây sẽ trả về tất cả các bản ghi từ bảng "BangA" và các bản ghi tương ứng từ "BangB", đồng thời trả về tất cả các bản ghi từ "BangB" và các bản ghi tương ứng từ "BangA". Nếu không có bản ghi tương ứng, các cột sẽ chứa giá trị NULL.

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 11: Cho bảng "SinhVien" (maSV, tenSV, maKhoa) và "Khoa" (maKhoa, tenKhoa). Để tìm danh sách sinh viên thuộc khoa "Công nghệ thông tin", bạn cần sử dụng mệnh đề `WHERE` ở bảng nào?

  • A. Chỉ trên bảng "SinhVien".
  • B. Chỉ trên bảng "Khoa".
  • C. Trên cả bảng "SinhVien" và "Khoa" trong mệnh đề JOIN ... ON và WHERE.
  • D. Không cần sử dụng mệnh đề WHERE trong trường hợp này.

Câu 12: Trong một truy vấn liên kết nhiều bảng, thứ tự liên kết các bảng có ảnh hưởng đến kết quả cuối cùng không?

  • A. Có, thứ tự liên kết bảng luôn ảnh hưởng đến kết quả.
  • B. Không, với INNER JOIN thứ tự thường không ảnh hưởng, nhưng có thể quan trọng với LEFT/RIGHT JOIN.
  • C. Chỉ ảnh hưởng khi liên kết hơn 5 bảng.
  • D. Thứ tự chỉ ảnh hưởng đến hiệu suất, không ảnh hưởng đến kết quả.

Câu 13: Cho bảng "Sach" (maSach, tenSach, maTG) và "TacGia" (maTG, tenTG). Nếu muốn tìm tên sách và tên tác giả của tất cả các sách, sắp xếp kết quả theo tên tác giả, bạn cần sử dụng mệnh đề nào để sắp xếp?

  • A. SORT BY
  • B. GROUP BY
  • C. ORDER BY
  • D. DISTINCT

Câu 14: Trong câu lệnh `SELECT Khoa.tenKhoa, COUNT(SinhVien.maSV) AS SoLuongSV FROM Khoa LEFT JOIN SinhVien ON Khoa.maKhoa = SinhVien.maKhoa GROUP BY Khoa.tenKhoa`, mệnh đề `GROUP BY Khoa.tenKhoa` có vai trò gì?

  • A. Sắp xếp kết quả theo tên khoa.
  • B. Nhóm các sinh viên theo từng khoa để đếm số lượng sinh viên trong mỗi khoa.
  • C. Lọc ra các khoa có số lượng sinh viên lớn hơn 0.
  • D. Chọn ra tên khoa duy nhất từ bảng Khoa.

Câu 15: Khi nào nên sử dụng phép liên kết tự thân (Self-Join)?

  • A. Khi muốn liên kết một bảng với chính nó, ví dụ để so sánh các hàng trong cùng một bảng.
  • B. Khi muốn liên kết hai bảng có cấu trúc hoàn toàn khác nhau.
  • C. Khi muốn thực hiện phép tính tổng hợp trên nhiều bảng.
  • D. Khi muốn tạo bản sao của một bảng.

Câu 16: Cho bảng "NhanVien" có cột "maNV" và "maNQL" (mã người quản lý). Để tìm tên nhân viên và tên người quản lý của họ, bạn cần sử dụng kiểu liên kết nào?

  • A. INNER JOIN với bảng "PhongBan".
  • B. LEFT JOIN với bảng "ChucVu".
  • C. RIGHT JOIN với bảng "NhanVien" nhưng khác cơ sở dữ liệu.
  • D. Self-Join (liên kết bảng "NhanVien" với chính nó).

Câu 17: Trong một câu lệnh JOIN, điều gì xảy ra nếu không có mệnh đề `ON` hoặc điều kiện liên kết không chính xác?

  • A. Câu lệnh sẽ báo lỗi và không thực thi được.
  • B. Có thể dẫn đến kết quả không chính xác hoặc tạo ra tích Descartes (Cartesian product) nếu là INNER JOIN không điều kiện.
  • C. Câu lệnh sẽ tự động bỏ qua phép liên kết và chỉ truy vấn bảng đầu tiên.
  • D. Câu lệnh sẽ thực hiện LEFT JOIN mặc định.

Câu 18: Cho bảng "Phim" (maPhim, tenPhim, maTheLoai) và "TheLoai" (maTL, tenTL). Để tìm tên phim và tên thể loại phim, và chỉ hiển thị các phim thuộc thể loại "Hành động", bạn cần kết hợp mệnh đề `JOIN` và mệnh đề nào?

  • A. ORDER BY
  • B. GROUP BY
  • C. HAVING
  • D. WHERE

Câu 19: Phát biểu nào sau đây mô tả đúng nhất về sự khác biệt giữa `INNER JOIN` và `LEFT JOIN`?

  • A. `INNER JOIN` nhanh hơn `LEFT JOIN`.
  • B. `LEFT JOIN` chỉ sử dụng được với hai bảng, còn `INNER JOIN` có thể dùng với nhiều bảng hơn.
  • C. `INNER JOIN` chỉ trả về các hàng khớp ở cả hai bảng, còn `LEFT JOIN` trả về tất cả hàng từ bảng bên trái và các hàng khớp từ bảng bên phải (nếu có).
  • D. `LEFT JOIN` dùng để sắp xếp dữ liệu, còn `INNER JOIN` dùng để lọc dữ liệu.

Câu 20: Cho bảng "BaiViet" (maBV, tieuDe, maChuDe) và "ChuDe" (maCD, tenCD). Nếu muốn đếm số lượng bài viết trong mỗi chủ đề, bạn cần sử dụng hàm tổng hợp nào kết hợp với `GROUP BY` sau khi đã `JOIN`?

  • A. COUNT()
  • B. SUM()
  • C. AVG()
  • D. MAX()

Câu 21: Xét câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM Bang1 A RIGHT JOIN Bang2 B ON A.id = B.id WHERE A.cot3 > 10`. Mệnh đề `WHERE A.cot3 > 10` sẽ được thực hiện ở giai đoạn nào?

  • A. Trước khi thực hiện phép `RIGHT JOIN`.
  • B. Trong quá trình thực hiện phép `RIGHT JOIN`.
  • C. Sau khi đã thực hiện phép `RIGHT JOIN` và tạo ra bảng kết quả liên kết.
  • D. Thay thế cho mệnh đề `ON`.

Câu 22: Trong trường hợp nào thì việc sử dụng `FULL OUTER JOIN` là cần thiết?

  • A. Khi chỉ muốn lấy các bản ghi có sự tương ứng giữa hai bảng.
  • B. Khi muốn lấy tất cả các bản ghi từ cả hai bảng, bao gồm cả những bản ghi không có sự tương ứng ở bảng còn lại.
  • C. Khi muốn tối ưu hóa hiệu suất truy vấn.
  • D. Khi muốn thực hiện phép liên kết tự thân (Self-Join).

Câu 23: Cho bảng "KhoHang" (maKH, tenKH, diaChi) và "SanPham" (maSP, tenSP, maKH). Nếu muốn liệt kê các kho hàng và số lượng sản phẩm hiện có trong mỗi kho, kể cả kho hàng chưa có sản phẩm nào, bạn nên dùng kiểu `JOIN` nào?

  • A. INNER JOIN
  • B. LEFT JOIN (nếu "KhoHang" là bảng bên trái)
  • C. RIGHT JOIN (nếu "KhoHang" là bảng bên phải)
  • D. CROSS JOIN

Câu 24: Để truy vấn dữ liệu từ ba bảng trở lên, bạn cần sử dụng bao nhiêu mệnh đề `JOIN` tối thiểu?

  • A. Một mệnh đề `JOIN`.
  • B. Số mệnh đề `JOIN` ít nhất phải bằng số bảng trừ đi một.
  • C. Số mệnh đề `JOIN` phải bằng số bảng.
  • D. Không giới hạn số mệnh đề `JOIN`.

Câu 25: Trong SQL, phép liên kết nào tạo ra tích Descartes (Cartesian product) giữa hai bảng?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. CROSS JOIN

Câu 26: Cho bảng "DanhMuc" (maDM, tenDM) và "SanPham" (maSP, tenSP, maDM). Nếu muốn tìm tất cả các danh mục và số lượng sản phẩm thuộc mỗi danh mục, sắp xếp theo số lượng sản phẩm giảm dần, câu lệnh SQL nào sau đây phù hợp nhất?

  • A. SELECT DM.tenDM, COUNT(SP.maSP) FROM DanhMuc DM JOIN SanPham SP ON DM.maDM = SP.maDM
  • B. SELECT DM.tenDM, SUM(SP.maSP) FROM DanhMuc DM JOIN SanPham SP ON DM.maDM = SP.maDM GROUP BY DM.tenDM
  • C. SELECT DM.tenDM, COUNT(SP.maSP) AS SoLuongSP FROM DanhMuc DM LEFT JOIN SanPham SP ON DM.maDM = SP.maDM GROUP BY DM.tenDM ORDER BY SoLuongSP DESC
  • D. SELECT DM.tenDM, COUNT(SP.maSP) FROM DanhMuc DM CROSS JOIN SanPham SP GROUP BY DM.tenDM

Câu 27: Trong SQL, khi nào bạn cần sử dụng mệnh đề `HAVING` thay vì `WHERE` để lọc dữ liệu?

  • A. Khi muốn lọc dữ liệu trước khi thực hiện phép `JOIN`.
  • B. Khi muốn lọc dữ liệu dựa trên kết quả của các hàm tổng hợp (ví dụ: `COUNT`, `SUM`, `AVG`) sau khi đã nhóm dữ liệu bằng `GROUP BY`.
  • C. Khi muốn sắp xếp dữ liệu theo một cột cụ thể.
  • D. Khi muốn chọn ra các cột duy nhất trong kết quả truy vấn.

Câu 28: Cho bảng "NhaCungCap" (maNCC, tenNCC) và "SanPham" (maSP, tenSP, maNCC). Để tìm tên nhà cung cấp và tên sản phẩm của các sản phẩm có giá lớn hơn 100.000 VNĐ, bạn cần thêm điều kiện lọc giá ở mệnh đề nào và trên bảng nào (giả sử bảng "SanPham" có cột "giaSP")?

  • A. Mệnh đề `WHERE` trên bảng `SanPham`.
  • B. Mệnh đề `HAVING` trên bảng `SanPham`.
  • C. Mệnh đề `ON` trong `JOIN` trên bảng `SanPham`.
  • D. Không cần mệnh đề lọc, điều kiện đã được xử lý trong `JOIN`.

Câu 29: Trong một cơ sở dữ liệu về thư viện, có bảng "DocGia" và "MuonSach". Bảng "MuonSach" có khóa ngoại liên kết đến bảng "DocGia". Nếu muốn tìm những độc giả chưa từng mượn sách, bạn nên sử dụng kiểu liên kết nào và điều kiện lọc nào?

  • A. `INNER JOIN` và điều kiện `WHERE MuonSach.maDG IS NOT NULL`.
  • B. `INNER JOIN` và điều kiện `WHERE MuonSach.maDG IS NULL`.
  • C. `LEFT JOIN` từ "DocGia" sang "MuonSach" và điều kiện `WHERE MuonSach.maDG IS NULL`.
  • D. `RIGHT JOIN` từ "DocGia" sang "MuonSach" và điều kiện `WHERE DocGia.maDG IS NULL`.

Câu 30: Để tối ưu hóa hiệu suất truy vấn khi liên kết các bảng lớn, bạn nên chú ý đến điều gì?

  • A. Sử dụng càng nhiều phép `JOIN` càng tốt để giảm số lượng bảng cần truy vấn.
  • B. Luôn sử dụng `FULL OUTER JOIN` để đảm bảo không bỏ sót dữ liệu.
  • C. Hạn chế sử dụng bí danh (alias) để câu lệnh ngắn gọn hơn.
  • D. Đảm bảo các cột được sử dụng trong mệnh đề `ON` đã được tạo chỉ mục (index).

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào chúng ta cần sử dụng liên kết bảng (JOIN)?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 2: Cho hai bảng 'HocSinh' (maHS, tenHS, maLop) và 'Lop' (maLop, tenLop). Câu lệnh SQL nào sau đây sẽ trả về danh sách tên học sinh và tên lớp của học sinh đó?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 3: Trong câu lệnh `SELECT * FROM A LEFT JOIN B ON A.id = B.id`, kiểu liên kết LEFT JOIN có ý nghĩa gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 4: Xét hai bảng 'SanPham' (maSP, tenSP, maLoai) và 'LoaiSanPham' (maLoai, tenLoai). Để liệt kê tất cả sản phẩm cùng với tên loại sản phẩm, ngay cả khi một số sản phẩm chưa được gán loại, bạn nên sử dụng kiểu liên kết nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 5: Trong SQL, mệnh đề `ON` được sử dụng trong câu lệnh JOIN để làm gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 6: Cho ba bảng 'DonHang' (maDH, maKH, ngayDat), 'KhachHang' (maKH, tenKH) và 'ChiTietDH' (maDH, maSP, soLuong). Để truy vấn danh sách các đơn hàng, bao gồm tên khách hàng và tổng số lượng sản phẩm trong mỗi đơn hàng, bạn cần liên kết bao nhiêu bảng?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 7: Khi thực hiện liên kết bảng, việc sử dụng bí danh (alias) cho tên bảng có lợi ích gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 8: Cho bảng 'NhanVien' (maNV, tenNV, maPhongBan) và 'PhongBan' (maPB, tenPB). Câu lệnh `SELECT NV.tenNV, PB.tenPB FROM NhanVien NV INNER JOIN PhongBan PB ON NV.maPhongBan = PB.maPB` sử dụng bí danh nào cho bảng 'NhanVien' và 'PhongBan'?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 9: Giả sử bạn muốn tìm tất cả các khóa học (bảng 'KhoaHoc') và thông tin giảng viên (bảng 'GiangVien') cho những khóa học có giảng viên phụ trách. Kiểu liên kết nào phù hợp nhất?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 10: Câu lệnh SQL nào sau đây sẽ trả về tất cả các bản ghi từ bảng 'BangA' và các bản ghi tương ứng từ 'BangB', đồng thời trả về tất cả các bản ghi từ 'BangB' và các bản ghi tương ứng từ 'BangA'. Nếu không có bản ghi tương ứng, các cột sẽ chứa giá trị NULL.

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 11: Cho bảng 'SinhVien' (maSV, tenSV, maKhoa) và 'Khoa' (maKhoa, tenKhoa). Để tìm danh sách sinh viên thuộc khoa 'Công nghệ thông tin', bạn cần sử dụng mệnh đề `WHERE` ở bảng nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 12: Trong một truy vấn liên kết nhiều bảng, thứ tự liên kết các bảng có ảnh hưởng đến kết quả cuối cùng không?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 13: Cho bảng 'Sach' (maSach, tenSach, maTG) và 'TacGia' (maTG, tenTG). Nếu muốn tìm tên sách và tên tác giả của tất cả các sách, sắp xếp kết quả theo tên tác giả, bạn cần sử dụng mệnh đề nào để sắp xếp?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 14: Trong câu lệnh `SELECT Khoa.tenKhoa, COUNT(SinhVien.maSV) AS SoLuongSV FROM Khoa LEFT JOIN SinhVien ON Khoa.maKhoa = SinhVien.maKhoa GROUP BY Khoa.tenKhoa`, mệnh đề `GROUP BY Khoa.tenKhoa` có vai trò gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 15: Khi nào nên sử dụng phép liên kết tự thân (Self-Join)?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 16: Cho bảng 'NhanVien' có cột 'maNV' và 'maNQL' (mã người quản lý). Để tìm tên nhân viên và tên người quản lý của họ, bạn cần sử dụng kiểu liên kết nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 17: Trong một câu lệnh JOIN, điều gì xảy ra nếu không có mệnh đề `ON` hoặc điều kiện liên kết không chính xác?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 18: Cho bảng 'Phim' (maPhim, tenPhim, maTheLoai) và 'TheLoai' (maTL, tenTL). Để tìm tên phim và tên thể loại phim, và chỉ hiển thị các phim thuộc thể loại 'Hành động', bạn cần kết hợp mệnh đề `JOIN` và mệnh đề nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 19: Phát biểu nào sau đây mô tả đúng nhất về sự khác biệt giữa `INNER JOIN` và `LEFT JOIN`?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 20: Cho bảng 'BaiViet' (maBV, tieuDe, maChuDe) và 'ChuDe' (maCD, tenCD). Nếu muốn đếm số lượng bài viết trong mỗi chủ đề, bạn cần sử dụng hàm tổng hợp nào kết hợp với `GROUP BY` sau khi đã `JOIN`?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 21: Xét câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM Bang1 A RIGHT JOIN Bang2 B ON A.id = B.id WHERE A.cot3 > 10`. Mệnh đề `WHERE A.cot3 > 10` sẽ được thực hiện ở giai đoạn nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 22: Trong trường hợp nào thì việc sử dụng `FULL OUTER JOIN` là cần thiết?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 23: Cho bảng 'KhoHang' (maKH, tenKH, diaChi) và 'SanPham' (maSP, tenSP, maKH). Nếu muốn liệt kê các kho hàng và số lượng sản phẩm hiện có trong mỗi kho, kể cả kho hàng chưa có sản phẩm nào, bạn nên dùng kiểu `JOIN` nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 24: Để truy vấn dữ liệu từ ba bảng trở lên, bạn cần sử dụng bao nhiêu mệnh đề `JOIN` tối thiểu?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 25: Trong SQL, phép liên kết nào tạo ra tích Descartes (Cartesian product) giữa hai bảng?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 26: Cho bảng 'DanhMuc' (maDM, tenDM) và 'SanPham' (maSP, tenSP, maDM). Nếu muốn tìm tất cả các danh mục và số lượng sản phẩm thuộc mỗi danh mục, sắp xếp theo số lượng sản phẩm giảm dần, câu lệnh SQL nào sau đây phù hợp nhất?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 27: Trong SQL, khi nào bạn cần sử dụng mệnh đề `HAVING` thay vì `WHERE` để lọc dữ liệu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 28: Cho bảng 'NhaCungCap' (maNCC, tenNCC) và 'SanPham' (maSP, tenSP, maNCC). Để tìm tên nhà cung cấp và tên sản phẩm của các sản phẩm có giá lớn hơn 100.000 VNĐ, bạn cần thêm điều kiện lọc giá ở mệnh đề nào và trên bảng nào (giả sử bảng 'SanPham' có cột 'giaSP')?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 29: Trong một cơ sở dữ liệu về thư viện, có bảng 'DocGia' và 'MuonSach'. Bảng 'MuonSach' có khóa ngoại liên kết đến bảng 'DocGia'. Nếu muốn tìm những độc giả chưa từng mượn sách, bạn nên sử dụng kiểu liên kết nào và điều kiện lọc nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 5

Câu 30: Để tối ưu hóa hiệu suất truy vấn khi liên kết các bảng lớn, bạn nên chú ý đến điều gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 06

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 06 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào cần sử dụng phép kết nối (JOIN) giữa các bảng?

  • A. Khi muốn lọc dữ liệu từ một bảng duy nhất.
  • B. Khi muốn truy xuất dữ liệu từ hai hoặc nhiều bảng có liên quan.
  • C. Khi muốn sắp xếp dữ liệu trong một bảng.
  • D. Khi muốn cập nhật dữ liệu trong một bảng.

Câu 2: Cho hai bảng "SinhVien" (MaSV, TenSV, MaKhoa) và "Khoa" (MaKhoa, TenKhoa). Để lấy danh sách tên sinh viên và tên khoa mà sinh viên đó theo học, loại phép kết nối nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 3: Trong câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM BangA AS A INNER JOIN BangB AS B ON A.khoa_ngoai = B.khoa_chinh`. "AS A" và "AS B" được gọi là gì và có tác dụng gì?

  • A. Tên bảng chính thức, giúp định danh bảng trong cơ sở dữ liệu.
  • B. Tên cột được đổi, giúp truy xuất cột dễ dàng hơn.
  • C. Bí danh bảng, giúp rút gọn tên bảng và tránh gây nhầm lẫn khi truy vấn nhiều bảng.
  • D. Từ khóa bắt buộc, không có tác dụng cụ thể.

Câu 4: Xét hai bảng "DonHang" (MaDH, MaKH, NgayDat) và "KhachHang" (MaKH, TenKH). Câu lệnh SQL nào sau đây sẽ trả về danh sách tất cả các đơn hàng và thông tin khách hàng tương ứng, ngay cả khi đơn hàng không có thông tin khách hàng?

  • A. SELECT * FROM DonHang INNER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • B. SELECT * FROM DonHang LEFT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • C. SELECT * FROM DonHang RIGHT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • D. SELECT * FROM DonHang FULL OUTER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH

Câu 5: Cho lược đồ quan hệ: "Sach" (MaSach, TenSach, MaTG) và "TacGia" (MaTG, TenTG). Viết câu lệnh SQL sử dụng INNER JOIN để lấy ra tên sách và tên tác giả của tất cả các sách có tác giả.

  • A. SELECT TenSach, TenTG FROM Sach, TacGia WHERE Sach.MaTG = TacGia.MaTG
  • B. SELECT Sach.TenSach, TacGia.TenTG FROM Sach LEFT JOIN TacGia ON Sach.MaTG = TacGia.MaTG
  • C. SELECT Sach.TenSach, TacGia.TenTG FROM Sach INNER JOIN TacGia ON Sach.MaTG = TacGia.MaTG
  • D. SELECT TenSach, TenTG FROM Sach FULL OUTER JOIN TacGia ON Sach.MaTG = TacGia.MaTG

Câu 6: Trong SQL, mệnh đề "ON" trong câu lệnh JOIN có vai trò gì?

  • A. Xác định bảng muốn kết nối.
  • B. Lọc dữ liệu sau khi kết nối.
  • C. Sắp xếp dữ liệu kết quả.
  • D. Xác định điều kiện kết nối giữa các bảng.

Câu 7: Giả sử bảng "SanPham" (MaSP, TenSP, MaLoai) và "LoaiSP" (MaLoai, TenLoai). Nếu bạn muốn tìm tất cả sản phẩm thuộc loại "Điện tử", câu lệnh SQL nào sau đây là hiệu quả nhất?

  • A. SELECT * FROM SanPham WHERE MaLoai = (SELECT MaLoai FROM LoaiSP WHERE TenLoai = "Điện tử")
  • B. SELECT SanPham.* FROM SanPham INNER JOIN LoaiSP ON SanPham.MaLoai = LoaiSP.MaLoai WHERE LoaiSP.TenLoai = "Điện tử"
  • C. SELECT * FROM SanPham, LoaiSP WHERE TenLoai = "Điện tử"
  • D. SELECT * FROM LoaiSP WHERE TenLoai = "Điện tử"

Câu 8: Phép kết nối "FULL OUTER JOIN" trả về kết quả như thế nào?

  • A. Chỉ trả về các hàng có giá trị khóa chung ở cả hai bảng.
  • B. Trả về tất cả các hàng từ bảng bên trái và các hàng phù hợp từ bảng bên phải.
  • C. Trả về tất cả các hàng từ cả hai bảng, điền NULL vào các cột nếu không có giá trị phù hợp.
  • D. Không được sử dụng trong SQL.

Câu 9: Khi nào việc sử dụng "LEFT JOIN" thay vì "INNER JOIN" là cần thiết?

  • A. Khi muốn lấy tất cả các bản ghi từ bảng bên trái, kể cả khi không có bản ghi tương ứng ở bảng bên phải.
  • B. Khi muốn lấy các bản ghi có ở cả hai bảng.
  • C. Khi muốn lấy các bản ghi chỉ có ở bảng bên phải.
  • D. LEFT JOIN và INNER JOIN luôn cho kết quả giống nhau.

Câu 10: Cho bảng "NhanVien" (MaNV, TenNV, MaPB) và "PhongBan" (MaPB, TenPB). Để đếm số lượng nhân viên trong mỗi phòng ban, câu lệnh SQL nào sau đây phù hợp?

  • A. SELECT TenPB, COUNT(*) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB
  • B. SELECT TenPB, COUNT(MaNV) FROM NhanVien
  • C. SELECT TenNV, COUNT(*) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB
  • D. SELECT PhongBan.TenPB, COUNT(NhanVien.MaNV) FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB GROUP BY PhongBan.TenPB

Câu 11: Trong một truy vấn JOIN phức tạp với nhiều bảng, việc sử dụng bí danh bảng (table alias) mang lại lợi ích gì chính?

  • A. Tăng tốc độ thực thi truy vấn.
  • B. Giúp câu lệnh truy vấn dễ đọc và dễ quản lý hơn, đặc biệt khi có nhiều bảng và cột trùng tên.
  • C. Thay đổi cấu trúc cơ sở dữ liệu.
  • D. Bắt buộc để thực hiện phép JOIN.

Câu 12: Cho ba bảng: "Khoa" (MaKhoa, TenKhoa), "Lop" (MaLop, TenLop, MaKhoa), "SinhVien" (MaSV, TenSV, MaLop). Để lấy danh sách Tên sinh viên, Tên lớp, và Tên khoa, cần kết nối tối thiểu bao nhiêu bảng?

  • A. 1
  • B. 2
  • C. 3
  • D. Không cần kết nối bảng nào.

Câu 13: Xét câu lệnh SQL: `SELECT * FROM Bang1 RIGHT JOIN Bang2 ON Bang1.ID = Bang2.ID`. Nếu bảng "Bang2" có nhiều bản ghi không tương ứng với "Bang1", kết quả trả về sẽ chứa những hàng nào từ "Bang1"?

  • A. Tất cả các hàng từ "Bang1".
  • B. Chỉ các hàng từ "Bang1" có khóa chính trùng với "Bang2".
  • C. Chỉ các hàng từ "Bang1" không có khóa chính trùng với "Bang2".
  • D. Không hàng nào từ "Bang1" có các bản ghi không tương ứng trong "Bang2".

Câu 14: Trong tình huống nào sau đây, bạn sẽ ưu tiên sử dụng "INNER JOIN" hơn "LEFT JOIN"?

  • A. Khi muốn hiển thị tất cả dữ liệu từ bảng bên trái và dữ liệu phù hợp từ bảng bên phải.
  • B. Khi chỉ muốn hiển thị dữ liệu từ cả hai bảng khi có sự tương ứng ở cả hai bảng.
  • C. Khi muốn hiển thị dữ liệu chỉ có ở bảng bên trái.
  • D. Khi muốn hiển thị dữ liệu chỉ có ở bảng bên phải.

Câu 15: Cho bảng "Phim" (MaPhim, TenPhim, MaTheLoai) và "TheLoai" (MaTheLoai, TenTheLoai). Để liệt kê tên phim và tên thể loại của các phim thuộc thể loại "Hành động" hoặc "Kinh dị", câu lệnh SQL cần sử dụng mệnh đề WHERE như thế nào?

  • A. WHERE TheLoai.TenTheLoai = "Hành động" OR TheLoai.TenTheLoai = "Kinh dị"
  • B. WHERE TheLoai.TenTheLoai IN ("Hành động", "Kinh dị")
  • C. WHERE TheLoai.TenTheLoai = "Hành động" AND TheLoai.TenTheLoai = "Kinh dị"
  • D. WHERE MaTheLoai = "Hành động" OR MaTheLoai = "Kinh dị"

Câu 16: Nếu bạn muốn tìm các bản ghi từ bảng A không có bản ghi tương ứng trong bảng B dựa trên khóa liên kết, loại JOIN nào kết hợp với mệnh đề WHERE phù hợp?

  • A. INNER JOIN WHERE B.khoa_ngoai IS NOT NULL
  • B. RIGHT JOIN WHERE A.khoa_ngoai IS NULL
  • C. LEFT JOIN WHERE B.khoa_ngoai IS NULL
  • D. FULL OUTER JOIN WHERE A.khoa_ngoai IS NULL AND B.khoa_ngoai IS NULL

Câu 17: Cho bảng "GiaoVien" (MaGV, TenGV, MaBM) và "BoMon" (MaBM, TenBM). Để lấy danh sách Tên giáo viên và Tên bộ môn, sắp xếp theo Tên bộ môn, câu lệnh SQL nào đúng?

  • A. SELECT TenGV, TenBM FROM GiaoVien INNER JOIN BoMon ON GiaoVien.MaBM = BoMon.MaBM ORDER BY TenGV
  • B. SELECT GiaoVien.TenGV, BoMon.TenBM FROM GiaoVien INNER JOIN BoMon ON GiaoVien.MaBM = BoMon.MaBM ORDER BY BoMon.TenBM
  • C. SELECT TenGV, TenBM FROM GiaoVien, BoMon ORDER BY TenBM
  • D. SELECT TenGV, TenBM FROM GiaoVien LEFT JOIN BoMon ON GiaoVien.MaBM = BoMon.MaBM ORDER BY TenBM

Câu 18: Trong SQL, khi thực hiện phép JOIN giữa hai bảng lớn, yếu tố nào sau đây có thể ảnh hưởng lớn nhất đến hiệu suất truy vấn?

  • A. Số lượng cột được chọn trong mệnh đề SELECT.
  • B. Thứ tự các bảng trong mệnh đề FROM.
  • C. Sử dụng bí danh bảng (table alias).
  • D. Thiếu index trên các cột khóa ngoại và khóa chính được sử dụng trong điều kiện JOIN.

Câu 19: Cho bảng "HocSinh" (MaHS, TenHS, DiemToan) và "KetQua" (MaHS, MaMon, Diem). Để tìm ra những học sinh có điểm Toán lớn hơn điểm trung bình môn Toán của tất cả học sinh, phép JOIN có cần thiết không và tại sao?

  • A. Không cần, vì có thể sử dụng truy vấn con để tính điểm trung bình và so sánh trong cùng bảng "HocSinh".
  • B. Cần thiết, để kết hợp "HocSinh" và "KetQua" để lấy điểm Toán.
  • C. Cần thiết, để sử dụng các hàm thống kê trên hai bảng.
  • D. Tùy thuộc vào phiên bản SQL sử dụng.

Câu 20: Xét câu lệnh: `SELECT * FROM A CROSS JOIN B`. Kết quả của phép "CROSS JOIN" này là gì?

  • A. Tương tự như INNER JOIN.
  • B. Tích Descartes của hai bảng, mỗi hàng của bảng A kết hợp với mọi hàng của bảng B.
  • C. Tương tự như LEFT JOIN.
  • D. Trả về lỗi cú pháp.

Câu 21: Cho bảng "NhaCungCap" (MaNCC, TenNCC) và "SanPham" (MaSP, TenSP, MaNCC). Nếu muốn liệt kê tất cả các nhà cung cấp và số lượng sản phẩm mà mỗi nhà cung cấp cung cấp, kể cả nhà cung cấp chưa cung cấp sản phẩm nào, loại JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 22: Câu lệnh SQL nào sau đây sử dụng phép tự kết nối (SELF JOIN) để tìm ra các nhân viên cùng thành phố trong bảng "NhanVien" (MaNV, TenNV, ThanhPho)?

  • A. SELECT N1.TenNV, N2.TenNV FROM NhanVien N1 INNER JOIN NhanVien N2
  • B. SELECT N1.TenNV, N2.TenNV FROM NhanVien N1 LEFT JOIN NhanVien N2 ON N1.MaNV = N2.MaNV
  • C. SELECT N1.TenNV, N2.TenNV FROM NhanVien N1 INNER JOIN NhanVien N2 ON N1.ThanhPho = N2.ThanhPho AND N1.MaNV != N2.MaNV
  • D. SELECT TenNV, ThanhPho FROM NhanVien

Câu 23: Khi kết nối ba bảng A, B, C, thứ tự kết nối có ảnh hưởng đến kết quả cuối cùng không, nếu sử dụng INNER JOIN?

  • A. Không, với INNER JOIN, thứ tự kết nối thường không ảnh hưởng đến kết quả, nhưng có thể ảnh hưởng đến hiệu suất.
  • B. Có, thứ tự kết nối luôn ảnh hưởng đến kết quả cuối cùng.
  • C. Chỉ ảnh hưởng khi có sử dụng mệnh đề WHERE.
  • D. Chỉ ảnh hưởng khi kết nối với số lượng bảng lớn hơn 5.

Câu 24: Cho bảng "BaiViet" (MaBV, TieuDe, MaTL) và "TheLoai" (MaTL, TenTL). Để tìm các bài viết thuộc về thể loại "Công nghệ" và có tiêu đề chứa từ khóa "mới nhất", câu lệnh SQL nào đúng?

  • A. SELECT * FROM BaiViet INNER JOIN TheLoai ON BaiViet.MaTL = TheLoai.MaTL WHERE TenTL = "Công nghệ"
  • B. SELECT * FROM BaiViet INNER JOIN TheLoai ON BaiViet.MaTL = TheLoai.MaTL WHERE TheLoai.TenTL = "Công nghệ" AND BaiViet.TieuDe LIKE "%mới nhất%"
  • C. SELECT * FROM BaiViet, TheLoai WHERE TenTL = "Công nghệ" OR TieuDe LIKE "%mới nhất%"
  • D. SELECT * FROM BaiViet WHERE TieuDe LIKE "%mới nhất%"

Câu 25: Trong SQL, phép "NATURAL JOIN" khác với "INNER JOIN ON" như thế nào?

  • A. NATURAL JOIN nhanh hơn INNER JOIN ON.
  • B. INNER JOIN ON tự động xác định điều kiện kết nối, còn NATURAL JOIN cần chỉ rõ.
  • C. NATURAL JOIN tự động kết nối dựa trên các cột có tên giống nhau, còn INNER JOIN ON cần chỉ rõ điều kiện kết nối.
  • D. Không có sự khác biệt giữa NATURAL JOIN và INNER JOIN ON.

Câu 26: Cho bảng "DuAn" (MaDA, TenDA) và "NhanVien_DuAn" (MaNV, MaDA, VaiTro). Để tìm các dự án không có nhân viên nào tham gia, loại JOIN nào và điều kiện WHERE nào phù hợp?

  • A. INNER JOIN WHERE NhanVien_DuAn.MaDA IS NOT NULL
  • B. LEFT JOIN WHERE NhanVien_DuAn.MaNV IS NULL
  • C. RIGHT JOIN WHERE DuAn.MaDA IS NULL
  • D. FULL OUTER JOIN WHERE DuAn.MaDA IS NULL AND NhanVien_DuAn.MaDA IS NULL

Câu 27: Trong SQL, khi nào nên sử dụng "RIGHT JOIN" thay vì "LEFT JOIN"?

  • A. RIGHT JOIN luôn hiệu quả hơn LEFT JOIN.
  • B. Khi muốn lấy tất cả dữ liệu từ bảng bên trái.
  • C. RIGHT JOIN và LEFT JOIN không có sự khác biệt.
  • D. RIGHT JOIN và LEFT JOIN tương tự nhau, chỉ khác nhau ở việc bảng nào được coi là "bên trái" và "bên phải" trong truy vấn.

Câu 28: Cho bảng "KhoHang" (MaKho, TenKho) và "SanPham_Kho" (MaSP, MaKho, SoLuong). Để liệt kê tên kho và tổng số lượng sản phẩm trong mỗi kho, câu lệnh SQL nào sau đây chính xác?

  • A. SELECT TenKho, SoLuong FROM KhoHang INNER JOIN SanPham_Kho ON KhoHang.MaKho = SanPham_Kho.MaKho
  • B. SELECT TenKho, COUNT(*) FROM KhoHang INNER JOIN SanPham_Kho ON KhoHang.MaKho = SanPham_Kho.MaKho
  • C. SELECT KhoHang.TenKho, SUM(SanPham_Kho.SoLuong) FROM KhoHang INNER JOIN SanPham_Kho ON KhoHang.MaKho = SanPham_Kho.MaKho GROUP BY KhoHang.TenKho
  • D. SELECT TenKho, AVG(SoLuong) FROM KhoHang INNER JOIN SanPham_Kho ON KhoHang.MaKho = SanPham_Kho.MaKho GROUP BY TenKho

Câu 29: Nếu một câu truy vấn JOIN trả về kết quả không như mong đợi, bước đầu tiên để kiểm tra lỗi có thể là gì?

  • A. Kiểm tra lại điều kiện kết nối trong mệnh đề ON và đảm bảo các khóa liên quan chính xác.
  • B. Thay đổi loại JOIN khác.
  • C. Thêm mệnh đề ORDER BY.
  • D. Xóa bớt các bảng tham gia JOIN.

Câu 30: Trong ngữ cảnh truy vấn dữ liệu từ nhiều bảng liên kết, kỹ năng quan trọng nhất cần có để viết câu lệnh JOIN hiệu quả là gì?

  • A. Thuộc lòng cú pháp SQL.
  • B. Khả năng gõ bàn phím nhanh.
  • C. Hiểu biết về các hàm thống kê trong SQL.
  • D. Hiểu rõ mối quan hệ giữa các bảng trong cơ sở dữ liệu và logic nghiệp vụ cần truy vấn.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào cần sử dụng phép kết nối (JOIN) giữa các bảng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 2: Cho hai bảng 'SinhVien' (MaSV, TenSV, MaKhoa) và 'Khoa' (MaKhoa, TenKhoa). Để lấy danh sách tên sinh viên và tên khoa mà sinh viên đó theo học, loại phép kết nối nào phù hợp nhất?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 3: Trong câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM BangA AS A INNER JOIN BangB AS B ON A.khoa_ngoai = B.khoa_chinh`. 'AS A' và 'AS B' được gọi là gì và có tác dụng gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 4: Xét hai bảng 'DonHang' (MaDH, MaKH, NgayDat) và 'KhachHang' (MaKH, TenKH). Câu lệnh SQL nào sau đây sẽ trả về danh sách tất cả các đơn hàng và thông tin khách hàng tương ứng, ngay cả khi đơn hàng không có thông tin khách hàng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 5: Cho lược đồ quan hệ: 'Sach' (MaSach, TenSach, MaTG) và 'TacGia' (MaTG, TenTG). Viết câu lệnh SQL sử dụng INNER JOIN để lấy ra tên sách và tên tác giả của tất cả các sách có tác giả.

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 6: Trong SQL, mệnh đề 'ON' trong câu lệnh JOIN có vai trò gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 7: Giả sử bảng 'SanPham' (MaSP, TenSP, MaLoai) và 'LoaiSP' (MaLoai, TenLoai). Nếu bạn muốn tìm tất cả sản phẩm thuộc loại 'Điện tử', câu lệnh SQL nào sau đây là hiệu quả nhất?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 8: Phép kết nối 'FULL OUTER JOIN' trả về kết quả như thế nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 9: Khi nào việc sử dụng 'LEFT JOIN' thay vì 'INNER JOIN' là cần thiết?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 10: Cho bảng 'NhanVien' (MaNV, TenNV, MaPB) và 'PhongBan' (MaPB, TenPB). Để đếm số lượng nhân viên trong mỗi phòng ban, câu lệnh SQL nào sau đây phù hợp?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 11: Trong một truy vấn JOIN phức tạp với nhiều bảng, việc sử dụng bí danh bảng (table alias) mang lại lợi ích gì chính?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 12: Cho ba bảng: 'Khoa' (MaKhoa, TenKhoa), 'Lop' (MaLop, TenLop, MaKhoa), 'SinhVien' (MaSV, TenSV, MaLop). Để lấy danh sách Tên sinh viên, Tên lớp, và Tên khoa, cần kết nối tối thiểu bao nhiêu bảng?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 13: Xét câu lệnh SQL: `SELECT * FROM Bang1 RIGHT JOIN Bang2 ON Bang1.ID = Bang2.ID`. Nếu bảng 'Bang2' có nhiều bản ghi không tương ứng với 'Bang1', kết quả trả về sẽ chứa những hàng nào từ 'Bang1'?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 14: Trong tình huống nào sau đây, bạn sẽ ưu tiên sử dụng 'INNER JOIN' hơn 'LEFT JOIN'?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 15: Cho bảng 'Phim' (MaPhim, TenPhim, MaTheLoai) và 'TheLoai' (MaTheLoai, TenTheLoai). Để liệt kê tên phim và tên thể loại của các phim thuộc thể loại 'Hành động' hoặc 'Kinh dị', câu lệnh SQL cần sử dụng mệnh đề WHERE như thế nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 16: Nếu bạn muốn tìm các bản ghi từ bảng A không có bản ghi tương ứng trong bảng B dựa trên khóa liên kết, loại JOIN nào kết hợp với mệnh đề WHERE phù hợp?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 17: Cho bảng 'GiaoVien' (MaGV, TenGV, MaBM) và 'BoMon' (MaBM, TenBM). Để lấy danh sách Tên giáo viên và Tên bộ môn, sắp xếp theo Tên bộ môn, câu lệnh SQL nào đúng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 18: Trong SQL, khi thực hiện phép JOIN giữa hai bảng lớn, yếu tố nào sau đây có thể ảnh hưởng lớn nhất đến hiệu suất truy vấn?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 19: Cho bảng 'HocSinh' (MaHS, TenHS, DiemToan) và 'KetQua' (MaHS, MaMon, Diem). Để tìm ra những học sinh có điểm Toán lớn hơn điểm trung bình môn Toán của tất cả học sinh, phép JOIN có cần thiết không và tại sao?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 20: Xét câu lệnh: `SELECT * FROM A CROSS JOIN B`. Kết quả của phép 'CROSS JOIN' này là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 21: Cho bảng 'NhaCungCap' (MaNCC, TenNCC) và 'SanPham' (MaSP, TenSP, MaNCC). Nếu muốn liệt kê tất cả các nhà cung cấp và số lượng sản phẩm mà mỗi nhà cung cấp cung cấp, kể cả nhà cung cấp chưa cung cấp sản phẩm nào, loại JOIN nào phù hợp nhất?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 22: Câu lệnh SQL nào sau đây sử dụng phép tự kết nối (SELF JOIN) để tìm ra các nhân viên cùng thành phố trong bảng 'NhanVien' (MaNV, TenNV, ThanhPho)?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 23: Khi kết nối ba bảng A, B, C, thứ tự kết nối có ảnh hưởng đến kết quả cuối cùng không, nếu sử dụng INNER JOIN?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 24: Cho bảng 'BaiViet' (MaBV, TieuDe, MaTL) và 'TheLoai' (MaTL, TenTL). Để tìm các bài viết thuộc về thể loại 'Công nghệ' và có tiêu đề chứa từ khóa 'mới nhất', câu lệnh SQL nào đúng?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 25: Trong SQL, phép 'NATURAL JOIN' khác với 'INNER JOIN ON' như thế nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 26: Cho bảng 'DuAn' (MaDA, TenDA) và 'NhanVien_DuAn' (MaNV, MaDA, VaiTro). Để tìm các dự án không có nhân viên nào tham gia, loại JOIN nào và điều kiện WHERE nào phù hợp?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 27: Trong SQL, khi nào nên sử dụng 'RIGHT JOIN' thay vì 'LEFT JOIN'?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 28: Cho bảng 'KhoHang' (MaKho, TenKho) và 'SanPham_Kho' (MaSP, MaKho, SoLuong). Để liệt kê tên kho và tổng số lượng sản phẩm trong mỗi kho, câu lệnh SQL nào sau đây chính xác?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 29: Nếu một câu truy vấn JOIN trả về kết quả không như mong đợi, bước đầu tiên để kiểm tra lỗi có thể là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 6

Câu 30: Trong ngữ cảnh truy vấn dữ liệu từ nhiều bảng liên kết, kỹ năng quan trọng nhất cần có để viết câu lệnh JOIN hiệu quả là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 07

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 07 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào cần sử dụng phép kết bảng (JOIN)?

  • A. Khi chỉ muốn truy xuất dữ liệu từ một bảng duy nhất.
  • B. Khi muốn truy xuất dữ liệu từ hai hoặc nhiều bảng có mối quan hệ với nhau.
  • C. Khi muốn sắp xếp dữ liệu trong một bảng theo thứ tự nhất định.
  • D. Khi muốn lọc dữ liệu trong một bảng dựa trên điều kiện cho trước.

Câu 2: Giả sử có hai bảng "SinhVien" (maSV, tenSV, maKhoa) và "Khoa" (maKhoa, tenKhoa). Câu lệnh SQL nào sau đây sẽ trả về danh sách tên sinh viên và tên khoa mà sinh viên đó thuộc về?

  • A. SELECT tenSV, tenKhoa FROM SinhVien, Khoa WHERE maSV = maKhoa
  • B. SELECT tenSV, tenKhoa FROM SinhVien UNION Khoa
  • C. SELECT SinhVien.tenSV, Khoa.tenKhoa FROM SinhVien INNER JOIN Khoa ON SinhVien.maKhoa = Khoa.maKhoa
  • D. SELECT tenSV, tenKhoa FROM SinhVien CROSS JOIN Khoa

Câu 3: Cho hai bảng "DonHang" (maDH, ngayDat, maKH) và "KhachHang" (maKH, tenKH). Mục đích của mệnh đề "INNER JOIN DonHang ON DonHang.maKH = KhachHang.maKH" là gì?

  • A. Liên kết các bản ghi từ bảng "DonHang" và "KhachHang" khi giá trị "maKH" ở cả hai bảng khớp nhau.
  • B. Chọn tất cả các bản ghi từ bảng "DonHang" và chỉ các bản ghi khớp từ "KhachHang".
  • C. Chọn tất cả các bản ghi từ bảng "KhachHang" và chỉ các bản ghi khớp từ "DonHang".
  • D. Kết hợp tất cả các bản ghi từ cả hai bảng mà không cần điều kiện khớp.

Câu 4: Phép kết nào trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải? Nếu không có bản ghi phù hợp ở bảng bên phải, các cột của bảng bên phải sẽ chứa giá trị NULL.

  • A. INNER JOIN
  • B. RIGHT JOIN
  • C. LEFT JOIN
  • D. FULL OUTER JOIN

Câu 5: Xét câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM Bang1 A LEFT JOIN Bang2 B ON A.khoa_ngoai = B.khoa_chinh WHERE B.cot3 IS NULL`. Câu lệnh này dùng để làm gì?

  • A. Lấy tất cả bản ghi từ Bang1 và các bản ghi tương ứng từ Bang2.
  • B. Lấy các bản ghi từ Bang1 mà không có bản ghi tương ứng trong Bang2.
  • C. Lấy các bản ghi từ Bang2 mà không có bản ghi tương ứng trong Bang1.
  • D. Lấy các bản ghi từ cả Bang1 và Bang2 khi có sự tương ứng.

Câu 6: Trong một truy vấn JOIN, điều gì xảy ra nếu không có mệnh đề "ON" hoặc điều kiện liên kết không chính xác?

  • A. Truy vấn sẽ báo lỗi và không thực hiện được.
  • B. Truy vấn sẽ trả về kết quả giống như INNER JOIN.
  • C. Truy vấn sẽ trả về kết quả giống như LEFT JOIN.
  • D. Truy vấn có thể tạo ra tích Descartes (CROSS JOIN), kết quả có thể không có ý nghĩa và rất lớn.

Câu 7: Cho lược đồ CSDL: "SanPham"(maSP, tenSP, maLoai), "LoaiSP"(maLoai, tenLoai). Để liệt kê tên sản phẩm và tên loại sản phẩm, phép JOIN nào hiệu quả nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 8: Giả sử bạn muốn liệt kê tất cả các "PhongBan" và số lượng "NhanVien" trong mỗi phòng ban, ngay cả khi phòng ban đó chưa có nhân viên nào. Loại JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN (với "PhongBan" là bảng bên trái)
  • C. RIGHT JOIN (với "PhongBan" là bảng bên phải)
  • D. FULL OUTER JOIN

Câu 9: Câu lệnh SQL nào sau đây sử dụng bí danh (alias) cho bảng để truy vấn dữ liệu từ hai bảng "Customers" và "Orders"?

  • A. SELECT Customers.name, Orders.orderID FROM Customers JOIN Orders ON Customers.customerID = Orders.customerID
  • B. SELECT c.name, o.orderID FROM Customers, Orders WHERE c.customerID = o.customerID
  • C. SELECT c.name, o.orderID FROM Customers AS c INNER JOIN Orders AS o ON c.customerID = o.customerID
  • D. SELECT name, orderID FROM Customers JOIN Orders USING (customerID)

Câu 10: Cho ba bảng: "SinhVien"(maSV, tenSV, maLop), "Lop"(maLop, tenLop, maKhoa), "Khoa"(maKhoa, tenKhoa). Để lấy danh sách tên sinh viên, tên lớp, và tên khoa, cần thực hiện bao nhiêu phép JOIN?

  • A. 1
  • B. 2
  • C. 3
  • D. Không cần JOIN

Câu 11: Trong câu lệnh `SELECT * FROM TableA FULL OUTER JOIN TableB ON TableA.id = TableB.id`, kết quả trả về sẽ chứa những bản ghi nào?

  • A. Chỉ các bản ghi có "id" chung ở cả TableA và TableB.
  • B. Chỉ các bản ghi từ TableA.
  • C. Chỉ các bản ghi từ TableB.
  • D. Tất cả các bản ghi từ TableA và TableB. Nếu không có bản ghi phù hợp, các cột của bảng còn lại sẽ chứa NULL.

Câu 12: Để lọc kết quả JOIN chỉ bao gồm những bản ghi thỏa mãn một điều kiện nào đó, chúng ta sử dụng mệnh đề nào sau mệnh đề JOIN ... ON ...?

  • A. WHERE
  • B. HAVING
  • C. ORDER BY
  • D. GROUP BY

Câu 13: Cho bảng "NhanVien" (maNV, tenNV, luong) và "ChucVu" (maCV, tenCV, maNV). Truy vấn nào sau đây tìm tên nhân viên và tên chức vụ của những nhân viên có lương trên 10 triệu?

  • A. SELECT tenNV, tenCV FROM NhanVien JOIN ChucVu ON NhanVien.maNV = ChucVu.maNV WHERE luong > 10000000
  • B. SELECT tenNV, tenCV FROM NhanVien, ChucVu WHERE luong > 10000000
  • C. SELECT NhanVien.tenNV, ChucVu.tenCV FROM NhanVien INNER JOIN ChucVu ON NhanVien.maNV = ChucVu.maNV WHERE NhanVien.luong > 10000000
  • D. SELECT tenNV, tenCV FROM NhanVien CROSS JOIN ChucVu WHERE luong > 10000000

Câu 14: Trong SQL, phép JOIN nào được sử dụng để kết hợp các hàng từ cùng một bảng?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. SELF JOIN

Câu 15: Giả sử bảng "NhanVien" có cột "maNQL" (mã người quản lý) tham chiếu đến "maNV" (mã nhân viên) trong cùng bảng. Làm thế nào để truy vấn tên nhân viên và tên người quản lý của họ?

  • A. SELECT NV1.tenNV, NV2.tenNV FROM NhanVien NV1 CROSS JOIN NhanVien NV2 ON NV1.maNQL = NV2.maNV
  • B. SELECT NV1.tenNV AS TenNhanVien, NV2.tenNV AS TenNguoiQuanLy FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.maNQL = NV2.maNV
  • C. SELECT NhanVien.tenNV, NhanVien.tenNV FROM NhanVien WHERE maNQL = maNV
  • D. SELECT tenNV, maNQL FROM NhanVien

Câu 16: Điều gì xảy ra với các bản ghi không khớp trong phép INNER JOIN?

  • A. Chúng được giữ lại từ bảng bên trái.
  • B. Chúng được giữ lại từ bảng bên phải.
  • C. Chúng bị loại khỏi kết quả.
  • D. Chúng được giữ lại và các cột không khớp được điền giá trị mặc định.

Câu 17: Cho bảng "Sach" (maSach, tenSach, maTG) và "TacGia" (maTG, tenTG). Câu lệnh SQL nào tìm tên sách và tên tác giả cho tất cả các sách, kể cả sách chưa có thông tin tác giả?

  • A. SELECT tenSach, tenTG FROM Sach INNER JOIN TacGia ON Sach.maTG = TacGia.maTG
  • B. SELECT Sach.tenSach, TacGia.tenTG FROM Sach LEFT JOIN TacGia ON Sach.maTG = TacGia.maTG
  • C. SELECT tenSach, tenTG FROM Sach RIGHT JOIN TacGia ON Sach.maTG = TacGia.maTG
  • D. SELECT tenSach, tenTG FROM Sach FULL OUTER JOIN TacGia ON Sach.maTG = TacGia.maTG

Câu 18: Trong câu lệnh JOIN, mệnh đề "USING (cot_chung)" được sử dụng khi nào?

  • A. Khi hai bảng có cột chung tên và kiểu dữ liệu, và muốn liên kết dựa trên cột đó.
  • B. Khi muốn sử dụng bí danh cho các cột.
  • C. Khi muốn lọc kết quả JOIN.
  • D. Khi muốn sắp xếp kết quả JOIN.

Câu 19: Giả sử bạn có bảng "SinhVien" và "DiemThi". Cột liên kết là "maSV". Nếu bạn muốn tìm những sinh viên không có bản ghi điểm thi nào trong bảng "DiemThi", bạn dùng loại JOIN và mệnh đề WHERE nào?

  • A. INNER JOIN và WHERE DiemThi.maSV IS NULL
  • B. LEFT JOIN và WHERE DiemThi.maSV IS NULL
  • C. RIGHT JOIN và WHERE SinhVien.maSV IS NULL
  • D. FULL OUTER JOIN và WHERE DiemThi.maSV IS NULL

Câu 20: Để kết hợp ba bảng "A", "B", và "C", bạn cần viết tối thiểu bao nhiêu mệnh đề JOIN?

  • A. 1
  • B. 2
  • C. 3
  • D. 4

Câu 21: Trong SQL, từ khóa nào được sử dụng để chỉ định loại phép kết bảng?

  • A. LINK
  • B. MERGE
  • C. JOIN
  • D. COMBINE

Câu 22: Khi sử dụng phép "RIGHT JOIN BảngA ON điều_kiện", bảng nào được coi là bảng "bên phải"?

  • A. BảngA
  • B. Bảng sau từ khóa RIGHT JOIN (trong trường hợp này không có bảng nào)
  • C. Cả BảngA và bảng sau RIGHT JOIN
  • D. Tùy thuộc vào điều kiện JOIN

Câu 23: Phép "CROSS JOIN" giữa hai bảng A và B sẽ trả về kết quả như thế nào?

  • A. Chỉ các bản ghi có khóa chung giữa A và B.
  • B. Tất cả bản ghi từ A và các bản ghi khớp từ B.
  • C. Tích Descartes của A và B, mỗi hàng của A kết hợp với mỗi hàng của B.
  • D. Không có bản ghi nào được trả về.

Câu 24: Trong mệnh đề "ON" của câu lệnh JOIN, chúng ta thường chỉ định điều gì?

  • A. Điều kiện liên kết giữa hai bảng, dựa trên cột khóa chính và khóa ngoại.
  • B. Điều kiện lọc dữ liệu sau khi JOIN.
  • C. Thứ tự sắp xếp kết quả JOIN.
  • D. Nhóm các bản ghi sau khi JOIN.

Câu 25: Khi nào sử dụng phép "FULL OUTER JOIN"?

  • A. Khi chỉ muốn lấy các bản ghi khớp giữa hai bảng.
  • B. Khi muốn lấy tất cả bản ghi từ bảng bên trái và các bản ghi khớp từ bảng bên phải.
  • C. Khi muốn lấy tất cả bản ghi từ bảng bên phải và các bản ghi khớp từ bảng bên trái.
  • D. Khi muốn lấy tất cả bản ghi từ cả hai bảng, bao gồm cả bản ghi không khớp ở mỗi bảng.

Câu 26: Lỗi phổ biến khi thực hiện phép JOIN là gì?

  • A. Sử dụng sai từ khóa SELECT.
  • B. Quên hoặc sai điều kiện liên kết trong mệnh đề ON.
  • C. Sử dụng sai kiểu dữ liệu của cột.
  • D. Thiếu mệnh đề WHERE.

Câu 27: Trong câu lệnh `SELECT * FROM A JOIN B ON A.x = B.y JOIN C ON B.z = C.w`, phép JOIN thứ hai liên kết bảng nào?

  • A. A và C
  • B. A và B
  • C. Kết quả của (A JOIN B) và C
  • D. B và C

Câu 28: Điều gì cần đảm bảo khi thực hiện JOIN trên nhiều bảng để tránh kết quả sai?

  • A. Xác định chính xác mối quan hệ (khóa chính - khóa ngoại) giữa các bảng và sử dụng đúng điều kiện JOIN.
  • B. Luôn sử dụng INNER JOIN.
  • C. Sắp xếp các bảng theo thứ tự bảng chữ cái.
  • D. Sử dụng càng nhiều phép JOIN càng tốt.

Câu 29: Khi nào nên sử dụng bí danh cột (column alias) trong câu lệnh SELECT khi JOIN nhiều bảng?

  • A. Để tăng tốc độ truy vấn.
  • B. Khi các cột từ các bảng khác nhau có tên giống nhau, để tránh gây nhầm lẫn.
  • C. Để lọc dữ liệu trả về.
  • D. Để sắp xếp dữ liệu trả về.

Câu 30: Trong ngữ cảnh thực tế, ứng dụng của phép JOIN trong truy xuất dữ liệu là gì?

  • A. Chỉ để hiển thị dữ liệu từ một bảng.
  • B. Chỉ để tạo ra các bảng mới từ dữ liệu có sẵn.
  • C. Để kết hợp và truy xuất thông tin liên quan từ nhiều bảng khác nhau, phục vụ các báo cáo, phân tích phức tạp.
  • D. Để bảo mật dữ liệu trong cơ sở dữ liệu.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 1: Trong cơ sở dữ liệu quan hệ, khi nào cần sử dụng phép kết bảng (JOIN)?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 2: Giả sử có hai bảng 'SinhVien' (maSV, tenSV, maKhoa) và 'Khoa' (maKhoa, tenKhoa). Câu lệnh SQL nào sau đây sẽ trả về danh sách tên sinh viên và tên khoa mà sinh viên đó thuộc về?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 3: Cho hai bảng 'DonHang' (maDH, ngayDat, maKH) và 'KhachHang' (maKH, tenKH). Mục đích của mệnh đề 'INNER JOIN DonHang ON DonHang.maKH = KhachHang.maKH' là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 4: Phép kết nào trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải? Nếu không có bản ghi phù hợp ở bảng bên phải, các cột của bảng bên phải sẽ chứa giá trị NULL.

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 5: Xét câu lệnh SQL: `SELECT A.cot1, B.cot2 FROM Bang1 A LEFT JOIN Bang2 B ON A.khoa_ngoai = B.khoa_chinh WHERE B.cot3 IS NULL`. Câu lệnh này dùng để làm gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 6: Trong một truy vấn JOIN, điều gì xảy ra nếu không có mệnh đề 'ON' hoặc điều kiện liên kết không chính xác?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 7: Cho lược đồ CSDL: 'SanPham'(maSP, tenSP, maLoai), 'LoaiSP'(maLoai, tenLoai). Để liệt kê tên sản phẩm và tên loại sản phẩm, phép JOIN nào hiệu quả nhất?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 8: Giả sử bạn muốn liệt kê tất cả các 'PhongBan' và số lượng 'NhanVien' trong mỗi phòng ban, ngay cả khi phòng ban đó chưa có nhân viên nào. Loại JOIN nào phù hợp nhất?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 9: Câu lệnh SQL nào sau đây sử dụng bí danh (alias) cho bảng để truy vấn dữ liệu từ hai bảng 'Customers' và 'Orders'?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 10: Cho ba bảng: 'SinhVien'(maSV, tenSV, maLop), 'Lop'(maLop, tenLop, maKhoa), 'Khoa'(maKhoa, tenKhoa). Để lấy danh sách tên sinh viên, tên lớp, và tên khoa, cần thực hiện bao nhiêu phép JOIN?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 11: Trong câu lệnh `SELECT * FROM TableA FULL OUTER JOIN TableB ON TableA.id = TableB.id`, kết quả trả về sẽ chứa những bản ghi nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 12: Để lọc kết quả JOIN chỉ bao gồm những bản ghi thỏa mãn một điều kiện nào đó, chúng ta sử dụng mệnh đề nào sau mệnh đề JOIN ... ON ...?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 13: Cho bảng 'NhanVien' (maNV, tenNV, luong) và 'ChucVu' (maCV, tenCV, maNV). Truy vấn nào sau đây tìm tên nhân viên và tên chức vụ của những nhân viên có lương trên 10 triệu?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 14: Trong SQL, phép JOIN nào được sử dụng để kết hợp các hàng từ cùng một bảng?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 15: Giả sử bảng 'NhanVien' có cột 'maNQL' (mã người quản lý) tham chiếu đến 'maNV' (mã nhân viên) trong cùng bảng. Làm thế nào để truy vấn tên nhân viên và tên người quản lý của họ?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 16: Điều gì xảy ra với các bản ghi không khớp trong phép INNER JOIN?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 17: Cho bảng 'Sach' (maSach, tenSach, maTG) và 'TacGia' (maTG, tenTG). Câu lệnh SQL nào tìm tên sách và tên tác giả cho tất cả các sách, kể cả sách chưa có thông tin tác giả?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 18: Trong câu lệnh JOIN, mệnh đề 'USING (cot_chung)' được sử dụng khi nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 19: Giả sử bạn có bảng 'SinhVien' và 'DiemThi'. Cột liên kết là 'maSV'. Nếu bạn muốn tìm những sinh viên không có bản ghi điểm thi nào trong bảng 'DiemThi', bạn dùng loại JOIN và mệnh đề WHERE nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 20: Để kết hợp ba bảng 'A', 'B', và 'C', bạn cần viết tối thiểu bao nhiêu mệnh đề JOIN?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 21: Trong SQL, từ khóa nào được sử dụng để chỉ định loại phép kết bảng?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 22: Khi sử dụng phép 'RIGHT JOIN BảngA ON điều_kiện', bảng nào được coi là bảng 'bên phải'?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 23: Phép 'CROSS JOIN' giữa hai bảng A và B sẽ trả về kết quả như thế nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 24: Trong mệnh đề 'ON' của câu lệnh JOIN, chúng ta thường chỉ định điều gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 25: Khi nào sử dụng phép 'FULL OUTER JOIN'?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 26: Lỗi phổ biến khi thực hiện phép JOIN là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 27: Trong câu lệnh `SELECT * FROM A JOIN B ON A.x = B.y JOIN C ON B.z = C.w`, phép JOIN thứ hai liên kết bảng nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 28: Điều gì cần đảm bảo khi thực hiện JOIN trên nhiều bảng để tránh kết quả sai?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 29: Khi nào nên sử dụng bí danh cột (column alias) trong câu lệnh SELECT khi JOIN nhiều bảng?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 7

Câu 30: Trong ngữ cảnh thực tế, ứng dụng của phép JOIN trong truy xuất dữ liệu là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 08

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 08 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong một cơ sở dữ liệu quản lý bán hàng, bạn có hai bảng: `Khách hàng` và `Đơn hàng`. Bảng `Đơn hàng` có khóa ngoại `Mã khách hàng` liên kết đến bảng `Khách hàng`. Câu lệnh SQL nào sau đây truy xuất danh sách tên khách hàng và số lượng đơn hàng mà mỗi khách hàng đã đặt?

  • A. SELECT KhachHang.TenKH, COUNT(DonHang.MaDH) FROM KhachHang WHERE KhachHang.MaKH = DonHang.MaKH
  • B. SELECT KhachHang.TenKH, COUNT(DonHang.MaDH) FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH GROUP BY KhachHang.TenKH
  • C. SELECT KhachHang.TenKH, DonHang.MaDH FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH
  • D. SELECT TenKH, SoLuongDonHang FROM KhachHang, DonHang WHERE KhachHang.MaKH = DonHang.MaKH

Câu 2: Xét hai bảng `Sản phẩm` và `Loại sản phẩm` trong cơ sở dữ liệu cửa hàng trực tuyến. Bảng `Sản phẩm` có cột `Mã loại sản phẩm` liên kết đến bảng `Loại sản phẩm`. Để liệt kê tên sản phẩm và tên loại sản phẩm tương ứng, bạn sẽ sử dụng loại phép nối nào?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 3: Cho ba bảng: `Giáo viên`, `Môn học`, và `Giáo viên_Môn học` (bảng liên kết giữa Giáo viên và Môn học). Bảng `Giáo viên_Môn học` chứa `Mã giáo viên` và `Mã môn học` là khóa ngoại. Câu lệnh SQL nào truy vấn tên giáo viên và tên môn học mà giáo viên đó dạy?

  • A. SELECT GiaoVien.TenGV, MonHoc.TenMH FROM GiaoVien, MonHoc WHERE GiaoVien.MaGV = MonHoc.MaMH
  • B. SELECT TenGV, TenMH FROM GiaoVien INNER JOIN MonHoc
  • C. SELECT GiaoVien.TenGV, MonHoc.TenMH FROM GiaoVien INNER JOIN GiaoVien_MonHoc ON GiaoVien.MaGV = GiaoVien_MonHoc.MaGV INNER JOIN MonHoc ON GiaoVien_MonHoc.MaMH = MonHoc.MaMH
  • D. SELECT GiaoVien.TenGV, MonHoc.TenMH FROM GiaoVien LEFT JOIN MonHoc ON GiaoVien.MaGV = MonHoc.MaMH

Câu 4: Trong cơ sở dữ liệu thư viện, bảng `Sách` có `Mã thể loại` liên kết đến bảng `Thể loại`. Bạn muốn lấy danh sách tất cả các sách và tên thể loại của chúng, kể cả những sách chưa được gán thể loại. Phép nối nào phù hợp?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. CROSS JOIN

Câu 5: Giả sử bạn có bảng `Nhân viên` và bảng `Phòng ban`, `Nhân viên` có khóa ngoại `Mã phòng ban`. Câu lệnh SQL nào tìm tên nhân viên và tên phòng ban của họ, chỉ cho những nhân viên thuộc phòng ban có tên bắt đầu bằng "K"?

  • A. SELECT NhanVien.TenNV, PhongBan.TenPB FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB WHERE TenPB = "K%"
  • B. SELECT NhanVien.TenNV, PhongBan.TenPB FROM NhanVien, PhongBan WHERE PhongBan.TenPB LIKE "K%"
  • C. SELECT TenNV, TenPB FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB AND PhongBan.TenPB LIKE "K%"
  • D. SELECT NhanVien.TenNV, PhongBan.TenPB FROM NhanVien INNER JOIN PhongBan ON NhanVien.MaPB = PhongBan.MaPB WHERE PhongBan.TenPB LIKE "K%"

Câu 6: Trong một hệ thống quản lý sinh viên, có bảng `Sinh viên` và `Lớp học`. Bảng `Sinh viên` có `Mã lớp` liên kết đến `Lớp học`. Làm thế nào để truy vấn danh sách lớp học và số lượng sinh viên trong mỗi lớp?

  • A. SELECT LopHoc.TenLop, COUNT(SinhVien.MaSV) FROM LopHoc LEFT JOIN SinhVien ON LopHoc.MaLop = SinhVien.MaLop GROUP BY LopHoc.TenLop
  • B. SELECT LopHoc.TenLop, SUM(SinhVien.MaSV) FROM LopHoc INNER JOIN SinhVien ON LopHoc.MaLop = SinhVien.MaLop
  • C. SELECT LopHoc.TenLop, SinhVien.MaSV FROM LopHoc INNER JOIN SinhVien ON LopHoc.MaLop = SinhVien.MaLop
  • D. SELECT TenLop, SoLuongSV FROM LopHoc, SinhVien WHERE LopHoc.MaLop = SinhVien.MaLop

Câu 7: Bạn có bảng `Bài viết` và `Tác giả`. Bảng `Bài viết` có `Mã tác giả` liên kết đến bảng `Tác giả`. Để tìm tất cả các tác giả và số bài viết của họ, kể cả những tác giả chưa có bài viết nào, bạn dùng phép nối nào?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 8: Cho bảng `Đơn hàng` và `Chi tiết đơn hàng`. `Đơn hàng` có `Mã đơn hàng` là khóa chính, `Chi tiết đơn hàng` có `Mã đơn hàng` là khóa ngoại. Câu lệnh SQL nào tính tổng giá trị mỗi đơn hàng (tổng của số lượng * đơn giá từ `Chi tiết đơn hàng`)?

  • A. SELECT DonHang.MaDH, SUM(ChiTietDH.SoLuong) FROM DonHang INNER JOIN ChiTietDH ON DonHang.MaDH = ChiTietDH.MaDH
  • B. SELECT DonHang.MaDH, AVG(ChiTietDH.SoLuong * ChiTietDH.DonGia) FROM DonHang INNER JOIN ChiTietDH ON DonHang.MaDH = ChiTietDH.MaDH
  • C. SELECT DonHang.MaDH, SUM(ChiTietDH.SoLuong * ChiTietDH.DonGia) AS TongGiaTri FROM DonHang INNER JOIN ChiTietDH ON DonHang.MaDH = ChiTietDH.MaDH GROUP BY DonHang.MaDH
  • D. SELECT MaDH, TongGiaTri FROM DonHang, ChiTietDH WHERE DonHang.MaDH = ChiTietDH.MaDH

Câu 9: Bạn muốn liệt kê tên khách hàng và thông tin đơn hàng của họ, nhưng chỉ cho những khách hàng đã đặt hàng trong tháng 1/2024. Bảng `Đơn hàng` có cột `Ngày đặt hàng`.

  • A. SELECT KhachHang.TenKH, DonHang.* FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH WHERE MONTH(DonHang.NgayDatHang) > 1
  • B. SELECT KhachHang.TenKH, DonHang.* FROM KhachHang, DonHang WHERE MONTH(DonHang.NgayDatHang) = 1
  • C. SELECT TenKH, DonHang.* FROM KhachHang INNER JOIN DonHang WHERE MONTH(DonHang.NgayDatHang) = 1
  • D. SELECT KhachHang.TenKH, DonHang.* FROM KhachHang INNER JOIN DonHang ON KhachHang.MaKH = DonHang.MaKH WHERE MONTH(DonHang.NgayDatHang) = 1 AND YEAR(DonHang.NgayDatHang) = 2024

Câu 10: Trong cơ sở dữ liệu phim, có bảng `Phim` và `Diễn viên`, bảng liên kết `Phim_Diễn viên` chứa `Mã phim` và `Mã diễn viên`. Câu lệnh SQL nào tìm tên phim và tên diễn viên đóng trong phim đó?

  • A. SELECT Phim.TenPhim, DienVien.TenDV FROM Phim, DienVien
  • B. SELECT TenPhim, TenDV FROM Phim INNER JOIN DienVien
  • C. SELECT Phim.TenPhim, DienVien.TenDV FROM Phim INNER JOIN Phim_DienVien ON Phim.MaPhim = Phim_DienVien.MaPhim INNER JOIN DienVien ON Phim_DienVien.MaDV = DienVien.MaDV
  • D. SELECT Phim.TenPhim, DienVien.TenDV FROM Phim LEFT JOIN DienVien ON Phim.MaPhim = DienVien.MaDV

Câu 11: Giả sử có bảng `Nhân viên` và `Chức vụ`. Bảng `Nhân viên` có cột `Mã chức vụ` liên kết đến bảng `Chức vụ`. Bạn muốn liệt kê tên nhân viên và tên chức vụ, sắp xếp kết quả theo tên chức vụ.

  • A. SELECT NhanVien.TenNV, ChucVu.TenCV FROM NhanVien INNER JOIN ChucVu ON NhanVien.MaCV = ChucVu.MaCV ORDER BY ChucVu.TenCV
  • B. SELECT NhanVien.TenNV, ChucVu.TenCV FROM NhanVien INNER JOIN ChucVu ON NhanVien.MaCV = ChucVu.MaCV SORT BY ChucVu.TenCV
  • C. SELECT TenNV, TenCV FROM NhanVien INNER JOIN ChucVu ORDER BY TenCV
  • D. SELECT NhanVien.TenNV, ChucVu.TenCV FROM NhanVien, ChucVu ORDER BY ChucVu.TenCV

Câu 12: Bạn có bảng `Khóa học` và `Bài học`. Bảng `Bài học` có `Mã khóa học` liên kết đến `Khóa học`. Hãy viết câu lệnh SQL để lấy danh sách tên khóa học và số lượng bài học trong mỗi khóa học, chỉ hiển thị những khóa học có từ 5 bài học trở lên.

  • A. SELECT KhoaHoc.TenKH, COUNT(BaiHoc.MaBH) FROM KhoaHoc INNER JOIN BaiHoc ON KhoaHoc.MaKH = BaiHoc.MaKH WHERE COUNT(BaiHoc.MaBH) >= 5 GROUP BY KhoaHoc.TenKH
  • B. SELECT KhoaHoc.TenKH, COUNT(BaiHoc.MaBH) FROM KhoaHoc LEFT JOIN BaiHoc ON KhoaHoc.MaKH = BaiHoc.MaKH GROUP BY KhoaHoc.TenKH HAVING COUNT(BaiHoc.MaBH) >= 5
  • C. SELECT KhoaHoc.TenKH, SUM(BaiHoc.MaBH) FROM KhoaHoc INNER JOIN BaiHoc ON KhoaHoc.MaKH = BaiHoc.MaKH GROUP BY KhoaHoc.TenKH WHERE SUM(BaiHoc.MaBH) >= 5
  • D. SELECT TenKH, SoLuongBH FROM KhoaHoc, BaiHoc WHERE SoLuongBH >= 5

Câu 13: Trong cơ sở dữ liệu sản phẩm, bảng `Sản phẩm` có `Mã nhà cung cấp` liên kết đến bảng `Nhà cung cấp`. Câu lệnh SQL nào tìm tên sản phẩm và tên nhà cung cấp, nhưng chỉ cho những sản phẩm có giá lớn hơn 100.000 VNĐ?

  • A. SELECT SanPham.TenSP, NhaCungCap.TenNCC FROM SanPham INNER JOIN NhaCungCap ON SanPham.MaNCC = NhaCungCap.MaNCC AND SanPham.Gia > 100000
  • B. SELECT SanPham.TenSP, NhaCungCap.TenNCC FROM SanPham, NhaCungCap WHERE SanPham.Gia > 100000
  • C. SELECT TenSP, TenNCC FROM SanPham INNER JOIN NhaCungCap WHERE SanPham.Gia > 100000
  • D. SELECT SanPham.TenSP, NhaCungCap.TenNCC FROM SanPham INNER JOIN NhaCungCap ON SanPham.MaNCC = NhaCungCap.MaNCC WHERE SanPham.Gia > 100000

Câu 14: Bạn có bảng `Địa điểm` và `Sự kiện`. Bảng `Sự kiện` có `Mã địa điểm` liên kết đến `Địa điểm`. Làm thế nào để truy vấn danh sách địa điểm và số lượng sự kiện được tổ chức tại mỗi địa điểm, sắp xếp theo số lượng sự kiện giảm dần?

  • A. SELECT DiaDiem.TenDD, COUNT(SuKien.MaSK) FROM DiaDiem LEFT JOIN SuKien ON DiaDiem.MaDD = SuKien.MaDD GROUP BY DiaDiem.TenDD ORDER BY COUNT(SuKien.MaSK) DESC
  • B. SELECT DiaDiem.TenDD, COUNT(SuKien.MaSK) FROM DiaDiem INNER JOIN SuKien ON DiaDiem.MaDD = SuKien.MaDD ORDER BY COUNT(SuKien.MaSK) ASC
  • C. SELECT DiaDiem.TenDD, SUM(SuKien.MaSK) FROM DiaDiem INNER JOIN SuKien ON DiaDiem.MaDD = SuKien.MaDD GROUP BY DiaDiem.TenDD
  • D. SELECT TenDD, SoLuongSK FROM DiaDiem, SuKien ORDER BY SoLuongSK DESC

Câu 15: Cho bảng `Hóa đơn` và `Khách hàng`. Bảng `Hóa đơn` có `Mã khách hàng` liên kết đến `Khách hàng`. Bạn muốn tìm tên khách hàng và tổng giá trị hóa đơn của họ, chỉ cho những khách hàng có tổng giá trị hóa đơn lớn hơn 5.000.000 VNĐ.

  • A. SELECT KhachHang.TenKH, SUM(HoaDon.GiaTriHD) FROM KhachHang INNER JOIN HoaDon ON KhachHang.MaKH = HoaDon.MaKH WHERE SUM(HoaDon.GiaTriHD) > 5000000 GROUP BY KhachHang.TenKH
  • B. SELECT KhachHang.TenKH, SUM(HoaDon.GiaTriHD) AS TongGiaTri FROM KhachHang INNER JOIN HoaDon ON KhachHang.MaKH = HoaDon.MaKH GROUP BY KhachHang.TenKH HAVING SUM(HoaDon.GiaTriHD) > 5000000
  • C. SELECT KhachHang.TenKH, AVG(HoaDon.GiaTriHD) FROM KhachHang INNER JOIN HoaDon ON KhachHang.MaKH = HoaDon.MaKH GROUP BY KhachHang.TenKH HAVING AVG(HoaDon.GiaTriHD) > 5000000
  • D. SELECT TenKH, TongGiaTri FROM KhachHang, HoaDon WHERE TongGiaTri > 5000000

Câu 16: Trong cơ sở dữ liệu bài viết blog, bảng `Bài viết` có `Mã danh mục` liên kết đến bảng `Danh mục`. Để lấy danh sách tất cả danh mục và số lượng bài viết trong mỗi danh mục, kể cả danh mục không có bài viết nào, bạn sử dụng phép nối nào?

  • A. LEFT JOIN
  • B. INNER JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 17: Bạn có bảng `Dự án` và `Nhân viên`. Bảng liên kết `Dự án_Nhân viên` chứa `Mã dự án` và `Mã nhân viên`. Câu lệnh SQL nào tìm tên dự án và tên nhân viên tham gia dự án, nhưng chỉ cho những dự án bắt đầu trong năm 2023?

  • A. SELECT DuAn.TenDA, NhanVien.TenNV FROM DuAn INNER JOIN NhanVien ON YEAR(DuAn.NgayBatDau) = 2023
  • B. SELECT TenDA, TenNV FROM DuAn INNER JOIN DuAn_NhanVien WHERE YEAR(NgayBatDau) = 2023
  • C. SELECT DuAn.TenDA, NhanVien.TenNV FROM DuAn INNER JOIN DuAn_NhanVien ON DuAn.MaDA = DuAn_NhanVien.MaDA INNER JOIN NhanVien ON DuAn_NhanVien.MaNV = NhanVien.MaNV WHERE YEAR(DuAn.NgayBatDau) = 2023
  • D. SELECT DuAn.TenDA, NhanVien.TenNV FROM DuAn, NhanVien WHERE YEAR(DuAn.NgayBatDau) = 2023

Câu 18: Trong cơ sở dữ liệu đặt phòng khách sạn, bảng `Phòng` có `Mã loại phòng` liên kết đến bảng `Loại phòng`. Câu lệnh SQL nào tìm tên loại phòng và giá trung bình của các phòng thuộc loại đó?

  • A. SELECT LoaiPhong.TenLoaiPhong, SUM(Phong.GiaPhong) FROM LoaiPhong INNER JOIN Phong ON LoaiPhong.MaLoaiPhong = Phong.MaLoaiPhong GROUP BY LoaiPhong.TenLoaiPhong
  • B. SELECT LoaiPhong.TenLoaiPhong, Phong.GiaPhong FROM LoaiPhong INNER JOIN Phong ON LoaiPhong.MaLoaiPhong = Phong.MaLoaiPhong
  • C. SELECT TenLoaiPhong, TrungBinhGia FROM LoaiPhong, Phong
  • D. SELECT LoaiPhong.TenLoaiPhong, AVG(Phong.GiaPhong) AS GiaTrungBinh FROM LoaiPhong INNER JOIN Phong ON LoaiPhong.MaLoaiPhong = Phong.MaLoaiPhong GROUP BY LoaiPhong.TenLoaiPhong

Câu 19: Bạn có bảng `Sinh viên` và `Điểm thi`. Bảng `Điểm thi` có `Mã sinh viên` liên kết đến `Sinh viên`. Hãy viết câu lệnh SQL để lấy tên sinh viên và điểm thi cao nhất của mỗi sinh viên.

  • A. SELECT SinhVien.TenSV, AVG(DiemThi.DiemSo) FROM SinhVien INNER JOIN DiemThi ON SinhVien.MaSV = DiemThi.MaSV GROUP BY SinhVien.TenSV
  • B. SELECT SinhVien.TenSV, MAX(DiemThi.DiemSo) AS DiemCaoNhat FROM SinhVien INNER JOIN DiemThi ON SinhVien.MaSV = DiemThi.MaSV GROUP BY SinhVien.TenSV
  • C. SELECT SinhVien.TenSV, DiemThi.DiemSo FROM SinhVien INNER JOIN DiemThi ON SinhVien.MaSV = DiemThi.MaSV ORDER BY DiemThi.DiemSo DESC
  • D. SELECT TenSV, DiemCaoNhat FROM SinhVien, DiemThi WHERE DiemCaoNhat = MAX(DiemSo)

Câu 20: Trong cơ sở dữ liệu bán vé máy bay, bảng `Chuyến bay` có `Mã máy bay` liên kết đến bảng `Máy bay`. Bạn muốn liệt kê mã chuyến bay và tên máy bay cho tất cả các chuyến bay, kể cả những chuyến bay chưa được gán máy bay (ví dụ, chuyến bay đang chờ xếp lịch máy bay).

  • A. INNER JOIN
  • B. FULL OUTER JOIN
  • C. LEFT JOIN
  • D. CROSS JOIN

Câu 21: Cho bảng `Sản phẩm` và `Đánh giá`. Bảng `Đánh giá` có `Mã sản phẩm` liên kết đến `Sản phẩm`. Câu lệnh SQL nào tìm tên sản phẩm và số lượng đánh giá 5 sao mà sản phẩm đó nhận được?

  • A. SELECT SanPham.TenSP, COUNT(DanhGia.MaDG) FROM SanPham INNER JOIN DanhGia ON SanPham.MaSP = DanhGia.MaSP WHERE DanhGia.SoSao = 5 GROUP BY SanPham.TenSP
  • B. SELECT SanPham.TenSP, SUM(DanhGia.MaDG) FROM SanPham INNER JOIN DanhGia ON SanPham.MaSP = DanhGia.MaSP WHERE DanhGia.SoSao = 5 GROUP BY SanPham.TenSP
  • C. SELECT SanPham.TenSP, DanhGia.MaDG FROM SanPham INNER JOIN DanhGia ON SanPham.MaSP = DanhGia.MaSP WHERE DanhGia.SoSao = 5
  • D. SELECT TenSP, SoDanhGia5Sao FROM SanPham, DanhGia WHERE DanhGia.SoSao = 5

Câu 22: Bạn có bảng `Bài kiểm tra` và `Câu hỏi`. Bảng `Câu hỏi` có `Mã bài kiểm tra` liên kết đến `Bài kiểm tra`. Hãy viết câu lệnh SQL để lấy tên bài kiểm tra và số lượng câu hỏi trong mỗi bài kiểm tra, chỉ hiển thị những bài kiểm tra có số câu hỏi ít hơn 10.

  • A. SELECT BaiKiemTra.TenBKT, COUNT(CauHoi.MaCH) FROM BaiKiemTra INNER JOIN CauHoi ON BaiKiemTra.MaBKT = CauHoi.MaBKT WHERE COUNT(CauHoi.MaCH) < 10 GROUP BY BaiKiemTra.TenBKT
  • B. SELECT BaiKiemTra.TenBKT, COUNT(CauHoi.MaCH) FROM BaiKiemTra LEFT JOIN CauHoi ON BaiKiemTra.MaBKT = CauHoi.MaBKT GROUP BY BaiKiemTra.TenBKT HAVING COUNT(CauHoi.MaCH) < 10
  • C. SELECT BaiKiemTra.TenBKT, SUM(CauHoi.MaCH) FROM BaiKiemTra INNER JOIN CauHoi ON BaiKiemTra.MaBKT = CauHoi.MaBKT GROUP BY BaiKiemTra.TenBKT WHERE SUM(CauHoi.MaCH) < 10
  • D. SELECT TenBKT, SoLuongCH FROM BaiKiemTra, CauHoi WHERE SoLuongCH < 10

Câu 23: Trong cơ sở dữ liệu nhân sự, bảng `Nhân viên` có `Mã quản lý` liên kết đến chính bảng `Nhân viên` (quan hệ tự tham chiếu). Câu lệnh SQL nào tìm tên nhân viên và tên người quản lý của họ?

  • A. SELECT NV1.TenNV, NV2.TenNV FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaNV = NV2.MaQL
  • B. SELECT NhanVien.TenNV, NhanVien.TenNV FROM NhanVien WHERE MaQL IS NOT NULL
  • C. SELECT NV1.TenNV AS TenNhanVien, NV2.TenNV AS TenQuanLy FROM NhanVien NV1 INNER JOIN NhanVien NV2 ON NV1.MaQL = NV2.MaNV
  • D. SELECT TenNV, TenQL FROM NhanVien WHERE MaQL IS NOT NULL

Câu 24: Bạn có bảng `Khách hàng` và `Quốc gia`. Bảng `Khách hàng` có `Mã quốc gia` liên kết đến `Quốc gia`. Hãy viết câu lệnh SQL để lấy danh sách quốc gia và số lượng khách hàng đến từ mỗi quốc gia, sắp xếp theo số lượng khách hàng giảm dần, chỉ hiển thị 5 quốc gia có nhiều khách hàng nhất.

  • A. SELECT QuocGia.TenQG, COUNT(KhachHang.MaKH) FROM QuocGia INNER JOIN KhachHang ON QuocGia.MaQG = KhachHang.MaQG ORDER BY COUNT(KhachHang.MaKH) DESC
  • B. SELECT QuocGia.TenQG, COUNT(KhachHang.MaKH) FROM QuocGia LEFT JOIN KhachHang ON QuocGia.MaQG = KhachHang.MaQG ORDER BY COUNT(KhachHang.MaKH) ASC
  • C. SELECT QuocGia.TenQG, SUM(KhachHang.MaKH) FROM QuocGia INNER JOIN KhachHang ON QuocGia.MaQG = KhachHang.MaQG GROUP BY QuocGia.TenQG ORDER BY SUM(KhachHang.MaKH) DESC
  • D. SELECT QuocGia.TenQG, COUNT(KhachHang.MaKH) AS SoLuongKH FROM QuocGia LEFT JOIN KhachHang ON QuocGia.MaQG = KhachHang.MaQG GROUP BY QuocGia.TenQG ORDER BY SoLuongKH DESC LIMIT 5

Câu 25: Trong cơ sở dữ liệu dự án, bảng `Công việc` có `Mã dự án` liên kết đến bảng `Dự án`. Bạn muốn tìm tên dự án và tổng chi phí của tất cả các công việc thuộc dự án đó, chỉ cho những dự án có tổng chi phí công việc vượt quá 100.000.000 VNĐ.

  • A. SELECT DuAn.TenDA, SUM(CongViec.ChiPhi) FROM DuAn INNER JOIN CongViec ON DuAn.MaDA = CongViec.MaDA WHERE SUM(CongViec.ChiPhi) > 100000000 GROUP BY DuAn.TenDA
  • B. SELECT DuAn.TenDA, SUM(CongViec.ChiPhi) AS TongChiPhi FROM DuAn INNER JOIN CongViec ON DuAn.MaDA = CongViec.MaDA GROUP BY DuAn.TenDA HAVING SUM(CongViec.ChiPhi) > 100000000
  • C. SELECT DuAn.TenDA, AVG(CongViec.ChiPhi) FROM DuAn INNER JOIN CongViec ON DuAn.MaDA = CongViec.MaDA GROUP BY DuAn.TenDA HAVING AVG(CongViec.ChiPhi) > 100000000
  • D. SELECT TenDA, TongChiPhi FROM DuAn, CongViec WHERE TongChiPhi > 100000000

Câu 26: Để truy xuất dữ liệu từ hai bảng có mối quan hệ khóa ngoại, phép nối `FULL OUTER JOIN` sẽ trả về kết quả như thế nào?

  • A. Chỉ các bản ghi có khóa ngoại khớp nhau ở cả hai bảng.
  • B. Chỉ các bản ghi từ bảng bên trái và các bản ghi khớp từ bảng bên phải.
  • C. Tất cả các bản ghi từ cả hai bảng, điền NULL nếu không có bản ghi khớp.
  • D. Các bản ghi từ bảng bên phải và các bản ghi khớp từ bảng bên trái.

Câu 27: Trong câu lệnh SQL sử dụng phép nối, mệnh đề `ON` được dùng để làm gì?

  • A. Lọc kết quả sau khi đã nối các bảng.
  • B. Xác định điều kiện để liên kết các bản ghi từ hai bảng.
  • C. Sắp xếp kết quả sau khi đã nối các bảng.
  • D. Nhóm các bản ghi sau khi đã nối các bảng.

Câu 28: Giả sử bạn muốn truy vấn dữ liệu từ hai bảng `A` và `B` mà chỉ lấy các bản ghi từ bảng `A` và các bản ghi khớp từ bảng `B`. Loại phép nối nào phù hợp nhất?

  • A. LEFT JOIN
  • B. INNER JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 29: Để truy vấn dữ liệu từ nhiều bảng liên kết với nhau, điều quan trọng nhất cần xác định là gì?

  • A. Số lượng bảng cần thiết để truy vấn.
  • B. Tên các cột cần truy xuất từ mỗi bảng.
  • C. Mối quan hệ khóa ngoại giữa các bảng.
  • D. Loại dữ liệu của các cột trong mỗi bảng.

Câu 30: Trong một cơ sở dữ liệu, việc sử dụng phép nối bảng (JOIN) mang lại lợi ích chính nào?

  • A. Tăng tốc độ truy vấn dữ liệu từ một bảng.
  • B. Giảm dung lượng lưu trữ cơ sở dữ liệu.
  • C. Đơn giản hóa cấu trúc của cơ sở dữ liệu.
  • D. Truy xuất và kết hợp dữ liệu từ nhiều bảng liên quan.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 1: Trong một cơ sở dữ liệu quản lý bán hàng, bạn có hai bảng: `Khách hàng` và `Đơn hàng`. Bảng `Đơn hàng` có khóa ngoại `Mã khách hàng` liên kết đến bảng `Khách hàng`. Câu lệnh SQL nào sau đây truy xuất danh sách tên khách hàng và số lượng đơn hàng mà mỗi khách hàng đã đặt?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 2: Xét hai bảng `Sản phẩm` và `Loại sản phẩm` trong cơ sở dữ liệu cửa hàng trực tuyến. Bảng `Sản phẩm` có cột `Mã loại sản phẩm` liên kết đến bảng `Loại sản phẩm`. Để liệt kê tên sản phẩm và tên loại sản phẩm tương ứng, bạn sẽ sử dụng loại phép nối nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 3: Cho ba bảng: `Giáo viên`, `Môn học`, và `Giáo viên_Môn học` (bảng liên kết giữa Giáo viên và Môn học). Bảng `Giáo viên_Môn học` chứa `Mã giáo viên` và `Mã môn học` là khóa ngoại. Câu lệnh SQL nào truy vấn tên giáo viên và tên môn học mà giáo viên đó dạy?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 4: Trong cơ sở dữ liệu thư viện, bảng `Sách` có `Mã thể loại` liên kết đến bảng `Thể loại`. Bạn muốn lấy danh sách tất cả các sách và tên thể loại của chúng, kể cả những sách chưa được gán thể loại. Phép nối nào phù hợp?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 5: Giả sử bạn có bảng `Nhân viên` và bảng `Phòng ban`, `Nhân viên` có khóa ngoại `Mã phòng ban`. Câu lệnh SQL nào tìm tên nhân viên và tên phòng ban của họ, chỉ cho những nhân viên thuộc phòng ban có tên bắt đầu bằng 'K'?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 6: Trong một hệ thống quản lý sinh viên, có bảng `Sinh viên` và `Lớp học`. Bảng `Sinh viên` có `Mã lớp` liên kết đến `Lớp học`. Làm thế nào để truy vấn danh sách lớp học và số lượng sinh viên trong mỗi lớp?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 7: Bạn có bảng `Bài viết` và `Tác giả`. Bảng `Bài viết` có `Mã tác giả` liên kết đến bảng `Tác giả`. Để tìm tất cả các tác giả và số bài viết của họ, kể cả những tác giả chưa có bài viết nào, bạn dùng phép nối nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 8: Cho bảng `Đơn hàng` và `Chi tiết đơn hàng`. `Đơn hàng` có `Mã đơn hàng` là khóa chính, `Chi tiết đơn hàng` có `Mã đơn hàng` là khóa ngoại. Câu lệnh SQL nào tính tổng giá trị mỗi đơn hàng (tổng của số lượng * đơn giá từ `Chi tiết đơn hàng`)?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 9: Bạn muốn liệt kê tên khách hàng và thông tin đơn hàng của họ, nhưng chỉ cho những khách hàng đã đặt hàng trong tháng 1/2024. Bảng `Đơn hàng` có cột `Ngày đặt hàng`.

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 10: Trong cơ sở dữ liệu phim, có bảng `Phim` và `Diễn viên`, bảng liên kết `Phim_Diễn viên` chứa `Mã phim` và `Mã diễn viên`. Câu lệnh SQL nào tìm tên phim và tên diễn viên đóng trong phim đó?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 11: Giả sử có bảng `Nhân viên` và `Chức vụ`. Bảng `Nhân viên` có cột `Mã chức vụ` liên kết đến bảng `Chức vụ`. Bạn muốn liệt kê tên nhân viên và tên chức vụ, sắp xếp kết quả theo tên chức vụ.

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 12: Bạn có bảng `Khóa học` và `Bài học`. Bảng `Bài học` có `Mã khóa học` liên kết đến `Khóa học`. Hãy viết câu lệnh SQL để lấy danh sách tên khóa học và số lượng bài học trong mỗi khóa học, chỉ hiển thị những khóa học có từ 5 bài học trở lên.

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 13: Trong cơ sở dữ liệu sản phẩm, bảng `Sản phẩm` có `Mã nhà cung cấp` liên kết đến bảng `Nhà cung cấp`. Câu lệnh SQL nào tìm tên sản phẩm và tên nhà cung cấp, nhưng chỉ cho những sản phẩm có giá lớn hơn 100.000 VNĐ?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 14: Bạn có bảng `Địa điểm` và `Sự kiện`. Bảng `Sự kiện` có `Mã địa điểm` liên kết đến `Địa điểm`. Làm thế nào để truy vấn danh sách địa điểm và số lượng sự kiện được tổ chức tại mỗi địa điểm, sắp xếp theo số lượng sự kiện giảm dần?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 15: Cho bảng `Hóa đơn` và `Khách hàng`. Bảng `Hóa đơn` có `Mã khách hàng` liên kết đến `Khách hàng`. Bạn muốn tìm tên khách hàng và tổng giá trị hóa đơn của họ, chỉ cho những khách hàng có tổng giá trị hóa đơn lớn hơn 5.000.000 VNĐ.

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 16: Trong cơ sở dữ liệu bài viết blog, bảng `Bài viết` có `Mã danh mục` liên kết đến bảng `Danh mục`. Để lấy danh sách tất cả danh mục và số lượng bài viết trong mỗi danh mục, kể cả danh mục không có bài viết nào, bạn sử dụng phép nối nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 17: Bạn có bảng `Dự án` và `Nhân viên`. Bảng liên kết `Dự án_Nhân viên` chứa `Mã dự án` và `Mã nhân viên`. Câu lệnh SQL nào tìm tên dự án và tên nhân viên tham gia dự án, nhưng chỉ cho những dự án bắt đầu trong năm 2023?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 18: Trong cơ sở dữ liệu đặt phòng khách sạn, bảng `Phòng` có `Mã loại phòng` liên kết đến bảng `Loại phòng`. Câu lệnh SQL nào tìm tên loại phòng và giá trung bình của các phòng thuộc loại đó?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 19: Bạn có bảng `Sinh viên` và `Điểm thi`. Bảng `Điểm thi` có `Mã sinh viên` liên kết đến `Sinh viên`. Hãy viết câu lệnh SQL để lấy tên sinh viên và điểm thi cao nhất của mỗi sinh viên.

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 20: Trong cơ sở dữ liệu bán vé máy bay, bảng `Chuyến bay` có `Mã máy bay` liên kết đến bảng `Máy bay`. Bạn muốn liệt kê mã chuyến bay và tên máy bay cho tất cả các chuyến bay, kể cả những chuyến bay chưa được gán máy bay (ví dụ, chuyến bay đang chờ xếp lịch máy bay).

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 21: Cho bảng `Sản phẩm` và `Đánh giá`. Bảng `Đánh giá` có `Mã sản phẩm` liên kết đến `Sản phẩm`. Câu lệnh SQL nào tìm tên sản phẩm và số lượng đánh giá 5 sao mà sản phẩm đó nhận được?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 22: Bạn có bảng `Bài kiểm tra` và `Câu hỏi`. Bảng `Câu hỏi` có `Mã bài kiểm tra` liên kết đến `Bài kiểm tra`. Hãy viết câu lệnh SQL để lấy tên bài kiểm tra và số lượng câu hỏi trong mỗi bài kiểm tra, chỉ hiển thị những bài kiểm tra có số câu hỏi ít hơn 10.

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 23: Trong cơ sở dữ liệu nhân sự, bảng `Nhân viên` có `Mã quản lý` liên kết đến chính bảng `Nhân viên` (quan hệ tự tham chiếu). Câu lệnh SQL nào tìm tên nhân viên và tên người quản lý của họ?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 24: Bạn có bảng `Khách hàng` và `Quốc gia`. Bảng `Khách hàng` có `Mã quốc gia` liên kết đến `Quốc gia`. Hãy viết câu lệnh SQL để lấy danh sách quốc gia và số lượng khách hàng đến từ mỗi quốc gia, sắp xếp theo số lượng khách hàng giảm dần, chỉ hiển thị 5 quốc gia có nhiều khách hàng nhất.

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 25: Trong cơ sở dữ liệu dự án, bảng `Công việc` có `Mã dự án` liên kết đến bảng `Dự án`. Bạn muốn tìm tên dự án và tổng chi phí của tất cả các công việc thuộc dự án đó, chỉ cho những dự án có tổng chi phí công việc vượt quá 100.000.000 VNĐ.

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 26: Để truy xuất dữ liệu từ hai bảng có mối quan hệ khóa ngoại, phép nối `FULL OUTER JOIN` sẽ trả về kết quả như thế nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 27: Trong câu lệnh SQL sử dụng phép nối, mệnh đề `ON` được dùng để làm gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 28: Giả sử bạn muốn truy vấn dữ liệu từ hai bảng `A` và `B` mà chỉ lấy các bản ghi từ bảng `A` và các bản ghi khớp từ bảng `B`. Loại phép nối nào phù hợp nhất?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 29: Để truy vấn dữ liệu từ nhiều bảng liên kết với nhau, điều quan trọng nhất cần xác định là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 8

Câu 30: Trong một cơ sở dữ liệu, việc sử dụng phép nối bảng (JOIN) mang lại lợi ích chính nào?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 09

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 09 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Để kết hợp dữ liệu từ hai bảng "Sanpham" và "Loaisanpham" dựa trên cột "MaLoaiSP" chung, và chỉ lấy các sản phẩm có loại sản phẩm tương ứng, loại phép kết nối SQL nào phù hợp nhất?

  • A. LEFT JOIN
  • B. INNER JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 2: Trong câu lệnh SQL `SELECT * FROM Khoa LEFT JOIN Sinhvien ON Khoa.MaKhoa = Sinhvien.MaKhoa`, nếu có một khoa không có sinh viên nào, thông tin về khoa đó sẽ hiển thị như thế nào trong kết quả?

  • A. Thông tin về khoa sẽ hiển thị, các cột của bảng "Sinhvien" sẽ là NULL.
  • B. Thông tin về khoa sẽ không hiển thị.
  • C. Lỗi câu lệnh SQL.
  • D. Chỉ hiển thị các khoa có sinh viên.

Câu 3: Cho hai bảng "DonHang" và "KhachHang" có quan hệ (một-nhiều) qua "MaKH". Câu lệnh SQL nào sau đây truy xuất danh sách tất cả các đơn hàng, đồng thời hiển thị thông tin khách hàng tương ứng (nếu có)?

  • A. SELECT * FROM DonHang INNER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • B. SELECT * FROM DonHang RIGHT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • C. SELECT * FROM DonHang LEFT JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH
  • D. SELECT * FROM DonHang FULL OUTER JOIN KhachHang ON DonHang.MaKH = KhachHang.MaKH

Câu 4: Giả sử bạn muốn tìm tất cả các sinh viên và thông tin lớp học mà họ tham gia. Bảng "Sinhvien" có cột "MaSV", bảng "Lophoc" có cột "MaLop", và bảng trung gian "Sinhvien_Lophoc" liên kết chúng. Câu lệnh SQL nào truy vấn đúng?

  • A. SELECT * FROM Sinhvien JOIN Lophoc ON Sinhvien.MaSV = Lophoc.MaLop
  • B. SELECT * FROM Sinhvien INNER JOIN Sinhvien_Lophoc ON Sinhvien.MaSV = Sinhvien_Lophoc.MaSV INNER JOIN Lophoc ON Sinhvien_Lophoc.MaLop = Lophoc.MaLop
  • C. SELECT * FROM Sinhvien, Lophoc, Sinhvien_Lophoc
  • D. SELECT * FROM Sinhvien LEFT JOIN Lophoc ON Sinhvien.MaSV = Lophoc.MaLop

Câu 5: Trong một cơ sở dữ liệu quản lý thư viện, bảng "Sach" chứa thông tin sách, bảng "Tacgia" chứa thông tin tác giả. Để liệt kê tên sách và tên tác giả, câu lệnh SQL nào hiệu quả nhất nếu một cuốn sách có thể có nhiều tác giả (quan hệ nhiều-nhiều)?

  • A. SELECT Sach.TenSach, Tacgia.TenTacgia FROM Sach INNER JOIN Tacgia ON Sach.MaTacGia = Tacgia.MaTacgia
  • B. SELECT Sach.TenSach, Tacgia.TenTacgia FROM Sach LEFT JOIN Tacgia ON Sach.MaTacGia = Tacgia.MaTacgia
  • C. SELECT Sach.TenSach, Tacgia.TenTacgia FROM Sach, Tacgia
  • D. SELECT * FROM Sach WHERE MaTacGia IN (SELECT MaTacgia FROM Tacgia)

Câu 6: Câu lệnh SQL `SELECT TenSP, TenLoaiSP FROM Sanpham FULL OUTER JOIN Loaisanpham ON Sanpham.MaLoaiSP = Loaisanpham.MaLoaiSP` sẽ trả về kết quả gì?

  • A. Chỉ các sản phẩm và loại sản phẩm có mã loại sản phẩm trùng nhau.
  • B. Tất cả sản phẩm từ bảng "Sanpham" và loại sản phẩm tương ứng từ "Loaisanpham".
  • C. Tất cả loại sản phẩm từ bảng "Loaisanpham" và sản phẩm tương ứng từ "Sanpham".
  • D. Tất cả sản phẩm và tất cả loại sản phẩm, ghép cặp nếu có thể, phần không ghép được sẽ có giá trị NULL.

Câu 7: Để lọc kết quả truy vấn liên kết và chỉ hiển thị các đơn hàng có tổng giá trị lớn hơn 1.000.000 VNĐ (giả sử cột "TongGiaTri" trong bảng "DonHang"), bạn sẽ thêm mệnh đề nào vào câu lệnh JOIN?

  • A. ORDER BY TongGiaTri > 1000000
  • B. WHERE TongGiaTri > 1000000
  • C. HAVING TongGiaTri > 1000000
  • D. AND TongGiaTri > 1000000 trong mệnh đề JOIN

Câu 8: Bạn có hai bảng "Nhanvien" (MaNV, TenNV, MaPhong) và "Phongban" (MaPhong, TenPhong). Để hiển thị tên nhân viên và tên phòng ban của họ, nhưng chỉ cho những nhân viên thuộc phòng ban có tên bắt đầu bằng "K", câu lệnh SQL nào đúng?

  • A. SELECT Nhanvien.TenNV, Phongban.TenPhong FROM Nhanvien INNER JOIN Phongban ON Nhanvien.MaPhong = Phongban.MaPhong WHERE Phongban.TenPhong = "K%"
  • B. SELECT Nhanvien.TenNV, Phongban.TenPhong FROM Nhanvien INNER JOIN Phongban ON Nhanvien.MaPhong = Phongban.MaPhong AND Phongban.TenPhong LIKE "K%"
  • C. SELECT Nhanvien.TenNV, Phongban.TenPhong FROM Nhanvien INNER JOIN Phongban ON Nhanvien.MaPhong = Phongban.MaPhong WHERE Phongban.TenPhong LIKE "K%"
  • D. SELECT Nhanvien.TenNV, Phongban.TenPhong FROM Nhanvien, Phongban WHERE Phongban.TenPhong LIKE "K%"

Câu 9: Trong câu lệnh `SELECT Sinhvien.TenSV, Lophoc.TenLop FROM Sinhvien RIGHT JOIN Lophoc ON Sinhvien.MaLop = Lophoc.MaLop`, bảng nào được ưu tiên giữ lại toàn bộ bản ghi, ngay cả khi không có bản ghi tương ứng ở bảng kia?

  • A. Bảng "Sinhvien"
  • B. Bảng "Lophoc"
  • C. Cả hai bảng
  • D. Không bảng nào được ưu tiên

Câu 10: Để đếm số lượng sinh viên trong mỗi lớp, bạn cần kết hợp bảng "Sinhvien" và "Lophoc" và sử dụng hàm gộp nào?

  • A. SUM()
  • B. AVG()
  • C. COUNT()
  • D. MAX()

Câu 11: Câu lệnh SQL nào sau đây sẽ tạo ra Cartesian product (tích Descartes) của hai bảng "A" và "B"?

  • A. SELECT * FROM A, B
  • B. SELECT * FROM A INNER JOIN B ON A.id = B.id
  • C. SELECT * FROM A LEFT JOIN B ON A.id = B.id
  • D. SELECT * FROM A WHERE EXISTS (SELECT * FROM B)

Câu 12: Khi nào nên sử dụng phép kết nối FULL OUTER JOIN?

  • A. Khi chỉ cần dữ liệu trùng khớp từ cả hai bảng.
  • B. Khi cần lấy tất cả dữ liệu từ bảng bên trái và dữ liệu khớp từ bảng bên phải.
  • C. Khi cần lấy tất cả dữ liệu từ bảng bên phải và dữ liệu khớp từ bảng bên trái.
  • D. Khi cần lấy tất cả dữ liệu từ cả hai bảng, bao gồm cả phần không trùng khớp.

Câu 13: Giả sử bảng "Sinhvien" có cột "GioiTinh". Để đếm số lượng sinh viên nam và nữ trong mỗi lớp, bạn cần sử dụng mệnh đề nào sau GROUP BY?

  • A. ORDER BY
  • B. JOIN
  • C. HAVING
  • D. WHERE (thực tế WHERE lọc trước GROUP BY, nhưng trong ngữ cảnh này, WHERE dùng để lọc giới tính trước khi đếm theo lớp, HAVING không phù hợp)

Câu 14: Để đổi tên bảng "Sinhvien" thành "Hocsinh" trong câu lệnh JOIN, bạn sử dụng từ khóa nào?

  • A. RENAME
  • B. AS
  • C. CHANGE
  • D. TO

Câu 15: Câu lệnh `SELECT * FROM A INNER JOIN B USING (MaChung)` hoạt động tương đương với câu lệnh nào?

  • A. SELECT * FROM A INNER JOIN B ON A.MaChung != B.MaChung
  • B. SELECT * FROM A LEFT JOIN B ON A.MaChung = B.MaChung
  • C. SELECT * FROM A INNER JOIN B ON A.MaChung = B.MaChung
  • D. SELECT * FROM A CROSS JOIN B

Câu 16: Cho bảng "Nhanvien" và "Luong". Để tìm nhân viên có mức lương cao nhất, bạn cần kết hợp JOIN và mệnh đề nào?

  • A. ORDER BY Luong DESC LIMIT 1
  • B. WHERE Luong = MAX(Luong)
  • C. GROUP BY Luong
  • D. HAVING Luong = MAX(Luong)

Câu 17: Để tìm các sản phẩm không thuộc bất kỳ loại sản phẩm nào (giả sử do lỗi dữ liệu), bạn dùng phép kết nối nào?

  • A. INNER JOIN
  • B. LEFT JOIN ... WHERE Loaisanpham.MaLoaiSP IS NULL
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 18: Trong SQL, mệnh đề ON trong JOIN dùng để làm gì?

  • A. Lọc kết quả sau khi đã kết nối.
  • B. Sắp xếp kết quả kết nối.
  • C. Xác định điều kiện để kết nối các bảng.
  • D. Nhóm các bản ghi sau khi kết nối.

Câu 19: Câu lệnh `SELECT Khoa.TenKhoa, COUNT(Sinhvien.MaSV) AS SoSinhVien FROM Khoa LEFT JOIN Sinhvien ON Khoa.MaKhoa = Sinhvien.MaKhoa GROUP BY Khoa.TenKhoa` dùng để làm gì?

  • A. Đếm số lượng sinh viên trong mỗi khoa.
  • B. Liệt kê tên khoa và tên sinh viên.
  • C. Tìm các khoa không có sinh viên.
  • D. Tính trung bình số sinh viên mỗi khoa.

Câu 20: Khi kết nối ba bảng A, B, và C, thứ tự kết nối có quan trọng không (ví dụ: (A JOIN B) JOIN C so với A JOIN (B JOIN C))?

  • A. Có, thứ tự luôn ảnh hưởng đến kết quả.
  • B. Thường không quan trọng về kết quả cuối cùng, nhưng có thể ảnh hưởng đến hiệu năng truy vấn.
  • C. Chỉ quan trọng khi dùng FULL OUTER JOIN.
  • D. Không bao giờ quan trọng.

Câu 21: Để hiển thị tên sản phẩm và giá, nhưng chỉ cho các sản phẩm có giá lớn hơn giá trung bình của tất cả sản phẩm, bạn cần dùng truy vấn con (subquery) và phép kết nối nào?

  • A. INNER JOIN và HAVING
  • B. LEFT JOIN và GROUP BY
  • C. RIGHT JOIN và ORDER BY
  • D. Không cần JOIN, dùng WHERE và subquery để so sánh giá với giá trung bình.

Câu 22: Mệnh đề `NATURAL JOIN` trong SQL thực hiện phép kết nối dựa trên điều kiện nào?

  • A. Các cột có tên giống nhau ở cả hai bảng.
  • B. Các cột được chỉ định rõ trong mệnh đề ON.
  • C. Các cột có kiểu dữ liệu tương thích.
  • D. Không có điều kiện cụ thể, kết nối tất cả các hàng.

Câu 23: Để tìm tất cả sinh viên và thông tin lớp học của họ, kể cả sinh viên chưa được xếp lớp, bạn nên dùng loại JOIN nào?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 24: Câu lệnh SQL nào sau đây truy vấn danh sách tên các lớp học và số lượng sinh viên trong mỗi lớp, sắp xếp theo số lượng sinh viên giảm dần?

  • A. SELECT Lophoc.TenLop, COUNT(*) FROM Lophoc JOIN Sinhvien ON Lophoc.MaLop = Sinhvien.MaLop
  • B. SELECT Lophoc.TenLop, COUNT() FROM Lophoc JOIN Sinhvien ON Lophoc.MaLop = Sinhvien.MaLop ORDER BY COUNT() ASC
  • C. SELECT Lophoc.TenLop, COUNT(*) AS SoLuongSV FROM Lophoc LEFT JOIN Sinhvien ON Lophoc.MaLop = Sinhvien.MaLop GROUP BY Lophoc.TenLop ORDER BY SoLuongSV DESC
  • D. SELECT Lophoc.TenLop, SUM() FROM Lophoc JOIN Sinhvien ON Lophoc.MaLop = Sinhvien.MaLop GROUP BY Lophoc.TenLop ORDER BY SUM() DESC

Câu 25: Trong ngữ cảnh kết nối bảng, "khóa ngoại" (foreign key) đóng vai trò gì?

  • A. Xác định duy nhất mỗi hàng trong bảng.
  • B. Liên kết một bảng với bảng khác thông qua quan hệ.
  • C. Tăng tốc độ truy vấn dữ liệu.
  • D. Đảm bảo tính toàn vẹn dữ liệu trong một bảng.

Câu 26: Để lọc các nhóm sau khi đã sử dụng GROUP BY trong câu lệnh JOIN, bạn dùng mệnh đề nào?

  • A. WHERE
  • B. ORDER BY
  • C. HAVING
  • D. LIMIT

Câu 27: Câu lệnh `SELECT * FROM A CROSS JOIN B` sẽ tạo ra kết quả như thế nào?

  • A. Chỉ các hàng có giá trị trùng nhau ở cột chung.
  • B. Tất cả hàng từ bảng A và hàng tương ứng từ bảng B.
  • C. Tất cả hàng từ bảng B và hàng tương ứng từ bảng A.
  • D. Tất cả các cặp hàng có thể được tạo ra từ bảng A và bảng B (Cartesian product).

Câu 28: Khi nào thì phép kết nối INNER JOIN và phép kết nối NATURAL JOIN cho ra kết quả giống nhau?

  • A. Không bao giờ.
  • B. Khi NATURAL JOIN tự động chọn đúng cột chung để kết nối, giống như điều kiện ON trong INNER JOIN.
  • C. Luôn luôn.
  • D. Chỉ khi kết nối hai bảng có cùng số lượng cột.

Câu 29: Để truy vấn dữ liệu từ 4 bảng trở lên, bạn cần sử dụng bao nhiêu mệnh đề JOIN tối thiểu?

  • A. 1
  • B. 2
  • C. 3
  • D. 4

Câu 30: Trong câu lệnh `SELECT Sanpham.TenSP, Loaisanpham.TenLoaiSP FROM Sanpham LEFT JOIN Loaisanpham ON Sanpham.MaLoaiSP = Loaisanpham.MaLoaiSP WHERE Loaisanpham.TenLoaiSP IS NULL`, câu lệnh này sẽ trả về thông tin gì?

  • A. Danh sách các sản phẩm không thuộc bất kỳ loại sản phẩm nào.
  • B. Danh sách tất cả sản phẩm và loại sản phẩm tương ứng.
  • C. Danh sách các loại sản phẩm không có sản phẩm nào thuộc về.
  • D. Lỗi câu lệnh SQL.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 1: Để kết hợp dữ liệu từ hai bảng 'Sanpham' và 'Loaisanpham' dựa trên cột 'MaLoaiSP' chung, và chỉ lấy các sản phẩm có loại sản phẩm tương ứng, loại phép kết nối SQL nào phù hợp nhất?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 2: Trong câu lệnh SQL `SELECT * FROM Khoa LEFT JOIN Sinhvien ON Khoa.MaKhoa = Sinhvien.MaKhoa`, nếu có một khoa không có sinh viên nào, thông tin về khoa đó sẽ hiển thị như thế nào trong kết quả?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 3: Cho hai bảng 'DonHang' và 'KhachHang' có quan hệ (một-nhiều) qua 'MaKH'. Câu lệnh SQL nào sau đây truy xuất danh sách tất cả các đơn hàng, đồng thời hiển thị thông tin khách hàng tương ứng (nếu có)?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 4: Giả sử bạn muốn tìm tất cả các sinh viên và thông tin lớp học mà họ tham gia. Bảng 'Sinhvien' có cột 'MaSV', bảng 'Lophoc' có cột 'MaLop', và bảng trung gian 'Sinhvien_Lophoc' liên kết chúng. Câu lệnh SQL nào truy vấn đúng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 5: Trong một cơ sở dữ liệu quản lý thư viện, bảng 'Sach' chứa thông tin sách, bảng 'Tacgia' chứa thông tin tác giả. Để liệt kê tên sách và tên tác giả, câu lệnh SQL nào hiệu quả nhất nếu một cuốn sách có thể có nhiều tác giả (quan hệ nhiều-nhiều)?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 6: Câu lệnh SQL `SELECT TenSP, TenLoaiSP FROM Sanpham FULL OUTER JOIN Loaisanpham ON Sanpham.MaLoaiSP = Loaisanpham.MaLoaiSP` sẽ trả về kết quả gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 7: Để lọc kết quả truy vấn liên kết và chỉ hiển thị các đơn hàng có tổng giá trị lớn hơn 1.000.000 VNĐ (giả sử cột 'TongGiaTri' trong bảng 'DonHang'), bạn sẽ thêm mệnh đề nào vào câu lệnh JOIN?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 8: Bạn có hai bảng 'Nhanvien' (MaNV, TenNV, MaPhong) và 'Phongban' (MaPhong, TenPhong). Để hiển thị tên nhân viên và tên phòng ban của họ, nhưng chỉ cho những nhân viên thuộc phòng ban có tên bắt đầu bằng 'K', câu lệnh SQL nào đúng?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 9: Trong câu lệnh `SELECT Sinhvien.TenSV, Lophoc.TenLop FROM Sinhvien RIGHT JOIN Lophoc ON Sinhvien.MaLop = Lophoc.MaLop`, bảng nào được ưu tiên giữ lại toàn bộ bản ghi, ngay cả khi không có bản ghi tương ứng ở bảng kia?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 10: Để đếm số lượng sinh viên trong mỗi lớp, bạn cần kết hợp bảng 'Sinhvien' và 'Lophoc' và sử dụng hàm gộp nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 11: Câu lệnh SQL nào sau đây sẽ tạo ra Cartesian product (tích Descartes) của hai bảng 'A' và 'B'?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 12: Khi nào nên sử dụng phép kết nối FULL OUTER JOIN?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 13: Giả sử bảng 'Sinhvien' có cột 'GioiTinh'. Để đếm số lượng sinh viên nam và nữ trong mỗi lớp, bạn cần sử dụng mệnh đề nào sau GROUP BY?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 14: Để đổi tên bảng 'Sinhvien' thành 'Hocsinh' trong câu lệnh JOIN, bạn sử dụng từ khóa nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 15: Câu lệnh `SELECT * FROM A INNER JOIN B USING (MaChung)` hoạt động tương đương với câu lệnh nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 16: Cho bảng 'Nhanvien' và 'Luong'. Để tìm nhân viên có mức lương cao nhất, bạn cần kết hợp JOIN và mệnh đề nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 17: Để tìm các sản phẩm không thuộc bất kỳ loại sản phẩm nào (giả sử do lỗi dữ liệu), bạn dùng phép kết nối nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 18: Trong SQL, mệnh đề ON trong JOIN dùng để làm gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 19: Câu lệnh `SELECT Khoa.TenKhoa, COUNT(Sinhvien.MaSV) AS SoSinhVien FROM Khoa LEFT JOIN Sinhvien ON Khoa.MaKhoa = Sinhvien.MaKhoa GROUP BY Khoa.TenKhoa` dùng để làm gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 20: Khi kết nối ba bảng A, B, và C, thứ tự kết nối có quan trọng không (ví dụ: (A JOIN B) JOIN C so với A JOIN (B JOIN C))?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 21: Để hiển thị tên sản phẩm và giá, nhưng chỉ cho các sản phẩm có giá lớn hơn giá trung bình của tất cả sản phẩm, bạn cần dùng truy vấn con (subquery) và phép kết nối nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 22: Mệnh đề `NATURAL JOIN` trong SQL thực hiện phép kết nối dựa trên điều kiện nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 23: Để tìm tất cả sinh viên và thông tin lớp học của họ, kể cả sinh viên chưa được xếp lớp, bạn nên dùng loại JOIN nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 24: Câu lệnh SQL nào sau đây truy vấn danh sách tên các lớp học và số lượng sinh viên trong mỗi lớp, sắp xếp theo số lượng sinh viên giảm dần?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 25: Trong ngữ cảnh kết nối bảng, 'khóa ngoại' (foreign key) đóng vai trò gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 26: Để lọc các nhóm sau khi đã sử dụng GROUP BY trong câu lệnh JOIN, bạn dùng mệnh đề nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 27: Câu lệnh `SELECT * FROM A CROSS JOIN B` sẽ tạo ra kết quả như thế nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 28: Khi nào thì phép kết nối INNER JOIN và phép kết nối NATURAL JOIN cho ra kết quả giống nhau?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 29: Để truy vấn dữ liệu từ 4 bảng trở lên, bạn cần sử dụng bao nhiêu mệnh đề JOIN tối thiểu?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 9

Câu 30: Trong câu lệnh `SELECT Sanpham.TenSP, Loaisanpham.TenLoaiSP FROM Sanpham LEFT JOIN Loaisanpham ON Sanpham.MaLoaiSP = Loaisanpham.MaLoaiSP WHERE Loaisanpham.TenLoaiSP IS NULL`, câu lệnh này sẽ trả về thông tin gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 10

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng - Đề 10 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong cơ sở dữ liệu quản lý bán hàng, bảng `Khách hàng` chứa thông tin khách hàng và bảng `Đơn hàng` chứa thông tin đơn hàng. Hai bảng này liên kết với nhau qua khóa ngoại `Mã khách hàng` trong bảng `Đơn hàng`. Câu lệnh SQL nào sau đây truy xuất danh sách tên khách hàng và tổng số đơn hàng của mỗi khách hàng?

  • A. SELECT Khách hàng.TenKhachHang, COUNT(*) FROM Khách hàng, Đơn hàng WHERE Khách hàng.MaKhachHang = Đơn hàng.MaKhachHang
  • B. SELECT Khách hàng.TenKhachHang, COUNT(Đơn hàng.MaDonHang) FROM Khách hàng INNER JOIN Đơn hàng ON Khách hàng.MaKhachHang = Đơn hàng.MaKhachHang GROUP BY Khách hàng.TenKhachHang
  • C. SELECT Khách hàng.TenKhachHang, SUM(Đơn hàng.MaDonHang) FROM Khách hàng INNER JOIN Đơn hàng ON Khách hàng.MaKhachHang = Đơn hàng.MaKhachHang
  • D. SELECT TenKhachHang, SoLuongDonHang FROM Khách hàng INNER JOIN Đơn hàng ON Khách hàng.MaKhachHang = Đơn hàng.MaKhachHang

Câu 2: Cho hai bảng `Sản phẩm` và `Loại sản phẩm` trong cơ sở dữ liệu cửa hàng điện tử. Bảng `Sản phẩm` có khóa ngoại `Mã loại sản phẩm` liên kết đến bảng `Loại sản phẩm`. Để liệt kê tên sản phẩm và tên loại sản phẩm tương ứng, loại phép kết nối bảng nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 3: Xét câu lệnh SQL: `SELECT A.Ten, B.DiaChi FROM NhanVien AS A LEFT JOIN PhongBan AS B ON A.MaPB = B.MaPB WHERE B.TenPB = "Kế toán"`. Câu lệnh này sẽ trả về thông tin gì?

  • A. Tên và địa chỉ của tất cả nhân viên thuộc phòng ban "Kế toán".
  • B. Tên và địa chỉ của tất cả phòng ban "Kế toán".
  • C. Tên nhân viên và địa chỉ phòng ban "Kế toán" cho những nhân viên có mã phòng ban khớp với phòng "Kế toán", và tên nhân viên cho những người không thuộc phòng ban nào.
  • D. Câu lệnh bị lỗi do sử dụng LEFT JOIN không đúng cách.

Câu 4: Trong một cơ sở dữ liệu về thư viện, bảng `Sách` chứa thông tin sách, bảng `Tác giả` chứa thông tin tác giả và bảng trung gian `Sach_TacGia` liên kết sách và tác giả (quan hệ nhiều-nhiều). Để truy vấn tên sách và tên tác giả của tất cả sách, câu lệnh SQL nào sau đây là đúng?

  • A. SELECT Sach.TenSach, TacGia.TenTacGia FROM Sach INNER JOIN TacGia ON Sach.MaSach = TacGia.MaTacGia
  • B. SELECT Sach.TenSach, TacGia.TenTacGia FROM Sach INNER JOIN Sach_TacGia ON Sach.MaSach = Sach_TacGia.MaSach INNER JOIN TacGia ON Sach_TacGia.MaTacGia = TacGia.MaTacGia
  • C. SELECT TenSach, TenTacGia FROM Sach, TacGia, Sach_TacGia WHERE Sach.MaSach = TacGia.MaTacGia
  • D. SELECT Sach.TenSach, TenTacGia FROM Sach LEFT JOIN Sach_TacGia ON Sach.MaSach = Sach_TacGia.MaSach

Câu 5: Giả sử có bảng `Nhân viên` với cột `MaNQL` (Mã người quản lý) tham chiếu đến `MaNV` (Mã nhân viên) của cùng bảng. Câu lệnh SQL nào truy xuất tên nhân viên và tên người quản lý của họ?

  • A. SELECT NV1.TenNV, NQL.TenNV FROM NhanVien INNER JOIN NhanVien ON NV1.MaNQL = NhanVien.MaNV
  • B. SELECT NhanVien.TenNV, NhanVien.TenNV FROM NhanVien WHERE MaNQL IS NOT NULL
  • C. SELECT NV.TenNV, NQL.TenNV FROM NhanVien AS NV INNER JOIN NhanVien AS NQL ON NV.MaNQL = NQL.MaNV
  • D. SELECT TenNV, MaNQL FROM NhanVien

Câu 6: Trong câu lệnh `SELECT * FROM BangA RIGHT JOIN BangB ON BangA.KhoaChinh = BangB.KhoaNgoai`, bảng nào được ưu tiên giữ lại TẤT CẢ các bản ghi, ngay cả khi không có bản ghi phù hợp ở bảng kia?

  • A. Bảng BangA
  • B. Bảng BangB
  • C. Cả hai bảng BangA và BangB
  • D. Không bảng nào cả, RIGHT JOIN tương tự INNER JOIN

Câu 7: Để tìm tất cả các sản phẩm KHÔNG thuộc bất kỳ loại sản phẩm nào (trong trường hợp bảng `Sản phẩm` có khóa ngoại `Mã loại sản phẩm` có thể NULL), phép kết nối bảng nào và điều kiện WHERE nào sau đây là phù hợp?

  • A. LEFT JOIN và WHERE Loại sản phẩm.MaLoaiSP IS NULL
  • B. INNER JOIN và WHERE Loại sản phẩm.MaLoaiSP IS NULL
  • C. RIGHT JOIN và WHERE Sản phẩm.MaLoaiSP IS NULL
  • D. FULL OUTER JOIN và WHERE Sản phẩm.MaLoaiSP IS NULL

Câu 8: Cho ba bảng `Giáo viên`, `Môn học`, và `GiaoVien_MonHoc` (bảng trung gian). Để truy vấn danh sách giáo viên và các môn học mà họ dạy, câu lệnh SQL cần sử dụng tối thiểu bao nhiêu phép JOIN?

  • A. Một phép JOIN
  • B. Hai phép JOIN
  • C. Ba phép JOIN
  • D. Không cần phép JOIN nào, chỉ cần mệnh đề WHERE

Câu 9: Trong SQL, mệnh đề `ON` trong câu lệnh JOIN được sử dụng để làm gì?

  • A. Lọc các bản ghi sau khi đã kết nối bảng.
  • B. Sắp xếp kết quả sau khi kết nối bảng.
  • C. Xác định điều kiện kết nối giữa các bảng.
  • D. Chọn các cột hiển thị trong kết quả.

Câu 10: Khi nào nên sử dụng phép `FULL OUTER JOIN` thay vì `INNER JOIN`?

  • A. Khi muốn kết quả trả về nhanh hơn.
  • B. Khi chỉ quan tâm đến các bản ghi có khóa chung ở cả hai bảng.
  • C. Khi muốn loại bỏ các bản ghi không có liên kết.
  • D. Khi muốn lấy tất cả bản ghi từ cả hai bảng, kể cả khi không có bản ghi tương ứng ở bảng kia.

Câu 11: Cho bảng `Bài viết` có cột `MaDanhMuc` liên kết đến bảng `Danh mục`. Câu lệnh `SELECT * FROM Bài viết JOIN Danh mục` sẽ thực hiện phép kết nối nào?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 12: Để đổi tên cột `TenKhachHang` trong bảng kết quả của câu lệnh JOIN thành `Tên khách hàng`, cú pháp nào sau đây là đúng?

  • A. SELECT TenKhachHang RENAME TO "Tên khách hàng" ...
  • B. SELECT TenKhachHang AS "Tên khách hàng" ...
  • C. SELECT "Tên khách hàng" = TenKhachHang ...
  • D. RENAME COLUMN TenKhachHang TO "Tên khách hàng" SELECT ...

Câu 13: Xét truy vấn: `SELECT * FROM A INNER JOIN B ON A.id = B.id WHERE A.gia_tri > 10 AND B.gia_tri < 20`. Điều kiện lọc nào được thực hiện TRƯỚC trong quá trình xử lý truy vấn?

  • A. Điều kiện `A.gia_tri > 10`
  • B. Điều kiện `B.gia_tri < 20`
  • C. Điều kiện kết nối `A.id = B.id` (mệnh đề ON)
  • D. Cả ba điều kiện được thực hiện đồng thời

Câu 14: Trong cơ sở dữ liệu quản lý lớp học, bảng `Học sinh` và `Điểm thi` liên kết qua `MaHS`. Để lấy danh sách học sinh và điểm thi môn Toán, nhưng chỉ hiển thị học sinh đã có điểm, phép JOIN nào phù hợp nhất?

  • A. INNER JOIN
  • B. LEFT JOIN
  • C. RIGHT JOIN
  • D. FULL OUTER JOIN

Câu 15: Để truy vấn danh sách tất cả các phòng ban và số lượng nhân viên trong mỗi phòng ban (kể cả phòng ban chưa có nhân viên nào), phép JOIN nào nên được sử dụng?

  • A. INNER JOIN
  • B. LEFT JOIN (nếu PhongBan là bảng bên trái)
  • C. RIGHT JOIN (nếu PhongBan là bảng bên phải)
  • D. FULL OUTER JOIN

Câu 16: Câu lệnh SQL nào sau đây có thể gây ra lỗi nếu có cột trùng tên giữa các bảng tham gia phép JOIN mà không sử dụng bí danh?

  • A. SELECT * FROM Bang1 INNER JOIN Bang2 ON Bang1.id = Bang2.id
  • B. SELECT Bang1.TenCot, Bang2.TenCot FROM Bang1 INNER JOIN Bang2 ON Bang1.id = Bang2.id
  • C. SELECT B1.TenCot, B2.TenCot FROM Bang1 AS B1 INNER JOIN Bang2 AS B2 ON B1.id = B2.id
  • D. SELECT Bang1., Bang2. FROM Bang1 INNER JOIN Bang2 ON Bang1.id = Bang2.id

Câu 17: Trong mệnh đề `ON` của câu lệnh JOIN, điều kiện kết nối thường dựa trên mối quan hệ gì giữa các bảng?

  • A. Quan hệ một - một
  • B. Quan hệ một - nhiều
  • C. Quan hệ nhiều - nhiều
  • D. Quan hệ khóa chính - khóa ngoại

Câu 18: Cho bảng `Nhân viên` (MaNV, TenNV, MaPB) và `PhongBan` (MaPB, TenPB). Để tìm tên nhân viên và tên phòng ban của nhân viên đó, nhưng chỉ cho những nhân viên thuộc phòng ban "Kinh doanh", mệnh đề WHERE nên được đặt ở đâu trong câu lệnh JOIN?

  • A. Trước mệnh đề JOIN
  • B. Trong mệnh đề ON
  • C. Sau mệnh đề JOIN
  • D. Không cần mệnh đề WHERE, dùng ON là đủ

Câu 19: Để thực hiện phép kết nối ĐỀ-CART giữa hai bảng `A` và `B`, cú pháp SQL nào sau đây là đúng?

  • A. SELECT * FROM A, B
  • B. SELECT * FROM A INNER JOIN B ON 1=1
  • C. SELECT * FROM A CROSS JOIN B
  • D. Tất cả các phương án trên đều đúng

Câu 20: Trong ngữ cảnh của phép JOIN, thuật ngữ "bảng bên trái" và "bảng bên phải" thường được dùng để phân biệt trong loại phép JOIN nào?

  • A. INNER JOIN và FULL OUTER JOIN
  • B. LEFT JOIN và RIGHT JOIN
  • C. CROSS JOIN và NATURAL JOIN
  • D. Tất cả các loại phép JOIN

Câu 21: Cho bảng `Sinh viên` (MaSV, TenSV) và `Khoa` (MaKhoa, TenKhoa). Sinh viên có thể không thuộc khoa nào. Để liệt kê TẤT CẢ sinh viên và khoa của họ (nếu có), phép JOIN nào phù hợp nhất?

  • A. LEFT JOIN (với bảng Sinh viên bên trái)
  • B. INNER JOIN
  • C. RIGHT JOIN (với bảng Sinh viên bên phải)
  • D. FULL OUTER JOIN

Câu 22: Điều gì xảy ra nếu bạn thực hiện phép `INNER JOIN` giữa hai bảng mà không có mệnh đề `ON` hoặc `WHERE`?

  • A. Câu lệnh sẽ báo lỗi.
  • B. Trả về kết quả tương tự LEFT JOIN.
  • C. Thực hiện phép tích Descartes (CROSS JOIN).
  • D. Trả về kết quả tương tự RIGHT JOIN.

Câu 23: Để tìm các cặp nhân viên làm việc CÙNG phòng ban, phép JOIN nào và điều kiện kết nối nào sau đây là phù hợp nhất (bảng `Nhân viên` có cột `MaPB`)?

  • A. INNER JOIN và điều kiện NV1.MaNV = NV2.MaNV
  • B. Self-JOIN và điều kiện NV1.MaPB = NV2.MaPB
  • C. LEFT JOIN và điều kiện NV1.MaPB <> NV2.MaPB
  • D. CROSS JOIN và không cần điều kiện

Câu 24: Giả sử bạn muốn truy vấn dữ liệu từ 4 bảng liên quan. Số lượng phép `JOIN` tối thiểu cần thiết trong câu lệnh SQL là bao nhiêu?

  • A. 2
  • B. 3
  • C. 4
  • D. Không giới hạn, tùy thuộc vào số lượng quan hệ

Câu 25: Trong SQL, từ khóa `NATURAL JOIN` thực hiện phép JOIN dựa trên điều kiện kết nối nào?

  • A. Các cột có tên giống nhau giữa hai bảng.
  • B. Khóa chính và khóa ngoại được khai báo rõ ràng.
  • C. Điều kiện được chỉ định trong mệnh đề WHERE.
  • D. Không có điều kiện kết nối cụ thể.

Câu 26: Để loại bỏ các bản ghi trùng lặp trong kết quả của phép JOIN, mệnh đề nào thường được sử dụng kết hợp với câu lệnh SELECT?

  • A. GROUP BY
  • B. DISTINCT
  • C. ORDER BY
  • D. HAVING

Câu 27: Trong cơ sở dữ liệu về đặt phòng khách sạn, bảng `Khách hàng`, `Phòng`, và `DatPhong` (bảng trung gian). Để truy vấn tên khách hàng, số phòng và ngày đặt phòng, câu lệnh SQL nào hiệu quả nhất?

  • A. SELECT KhachHang.TenKH, Phong.SoPhong FROM KhachHang, Phong
  • B. SELECT KhachHang.TenKH, Phong.SoPhong FROM KhachHang INNER JOIN Phong ON ...
  • C. SELECT KhachHang.TenKH, Phong.SoPhong, DatPhong.NgayDat FROM KhachHang INNER JOIN DatPhong ON KhachHang.MaKH = DatPhong.MaKH INNER JOIN Phong ON DatPhong.MaPhong = Phong.MaPhong
  • D. SELECT TenKH, SoPhong, NgayDat FROM KhachHang, DatPhong, Phong WHERE ...

Câu 28: Điều gì sẽ xảy ra nếu điều kiện `ON` trong câu lệnh `LEFT JOIN` không được đáp ứng cho một số bản ghi trong bảng bên trái?

  • A. Câu lệnh sẽ báo lỗi.
  • B. Bản ghi đó sẽ bị loại khỏi kết quả.
  • C. Giá trị của các cột từ bảng bên trái sẽ là NULL.
  • D. Giá trị của các cột từ bảng bên phải sẽ là NULL.

Câu 29: Trong cơ sở dữ liệu, khi nào việc sử dụng phép JOIN trở nên cần thiết?

  • A. Khi chỉ truy vấn dữ liệu từ một bảng duy nhất.
  • B. Khi cần truy xuất dữ liệu từ nhiều bảng có mối quan hệ với nhau.
  • C. Khi muốn sắp xếp dữ liệu theo thứ tự.
  • D. Khi muốn lọc dữ liệu theo điều kiện.

Câu 30: Để truy vấn danh sách các sản phẩm và tên loại sản phẩm, đồng thời sắp xếp kết quả theo tên loại sản phẩm, sau đó đến tên sản phẩm, mệnh đề nào cần được thêm vào câu lệnh JOIN?

  • A. GROUP BY
  • B. HAVING
  • C. ORDER BY
  • D. SORT BY

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 1: Trong cơ sở dữ liệu quản lý bán hàng, bảng `Khách hàng` chứa thông tin khách hàng và bảng `Đơn hàng` chứa thông tin đơn hàng. Hai bảng này liên kết với nhau qua khóa ngoại `Mã khách hàng` trong bảng `Đơn hàng`. Câu lệnh SQL nào sau đây truy xuất danh sách tên khách hàng và tổng số đơn hàng của mỗi khách hàng?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 2: Cho hai bảng `Sản phẩm` và `Loại sản phẩm` trong cơ sở dữ liệu cửa hàng điện tử. Bảng `Sản phẩm` có khóa ngoại `Mã loại sản phẩm` liên kết đến bảng `Loại sản phẩm`. Để liệt kê tên sản phẩm và tên loại sản phẩm tương ứng, loại phép kết nối bảng nào phù hợp nhất?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 3: Xét câu lệnh SQL: `SELECT A.Ten, B.DiaChi FROM NhanVien AS A LEFT JOIN PhongBan AS B ON A.MaPB = B.MaPB WHERE B.TenPB = 'Kế toán'`. Câu lệnh này sẽ trả về thông tin gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 4: Trong một cơ sở dữ liệu về thư viện, bảng `Sách` chứa thông tin sách, bảng `Tác giả` chứa thông tin tác giả và bảng trung gian `Sach_TacGia` liên kết sách và tác giả (quan hệ nhiều-nhiều). Để truy vấn tên sách và tên tác giả của tất cả sách, câu lệnh SQL nào sau đây là đúng?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 5: Giả sử có bảng `Nhân viên` với cột `MaNQL` (Mã người quản lý) tham chiếu đến `MaNV` (Mã nhân viên) của cùng bảng. Câu lệnh SQL nào truy xuất tên nhân viên và tên người quản lý của họ?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 6: Trong câu lệnh `SELECT * FROM BangA RIGHT JOIN BangB ON BangA.KhoaChinh = BangB.KhoaNgoai`, bảng nào được ưu tiên giữ lại TẤT CẢ các bản ghi, ngay cả khi không có bản ghi phù hợp ở bảng kia?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 7: Để tìm tất cả các sản phẩm KHÔNG thuộc bất kỳ loại sản phẩm nào (trong trường hợp bảng `Sản phẩm` có khóa ngoại `Mã loại sản phẩm` có thể NULL), phép kết nối bảng nào và điều kiện WHERE nào sau đây là phù hợp?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 8: Cho ba bảng `Giáo viên`, `Môn học`, và `GiaoVien_MonHoc` (bảng trung gian). Để truy vấn danh sách giáo viên và các môn học mà họ dạy, câu lệnh SQL cần sử dụng tối thiểu bao nhiêu phép JOIN?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 9: Trong SQL, mệnh đề `ON` trong câu lệnh JOIN được sử dụng để làm gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 10: Khi nào nên sử dụng phép `FULL OUTER JOIN` thay vì `INNER JOIN`?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 11: Cho bảng `Bài viết` có cột `MaDanhMuc` liên kết đến bảng `Danh mục`. Câu lệnh `SELECT * FROM Bài viết JOIN Danh mục` sẽ thực hiện phép kết nối nào?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 12: Để đổi tên cột `TenKhachHang` trong bảng kết quả của câu lệnh JOIN thành `Tên khách hàng`, cú pháp nào sau đây là đúng?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 13: Xét truy vấn: `SELECT * FROM A INNER JOIN B ON A.id = B.id WHERE A.gia_tri > 10 AND B.gia_tri < 20`. Điều kiện lọc nào được thực hiện TRƯỚC trong quá trình xử lý truy vấn?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 14: Trong cơ sở dữ liệu quản lý lớp học, bảng `Học sinh` và `Điểm thi` liên kết qua `MaHS`. Để lấy danh sách học sinh và điểm thi môn Toán, nhưng chỉ hiển thị học sinh đã có điểm, phép JOIN nào phù hợp nhất?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 15: Để truy vấn danh sách tất cả các phòng ban và số lượng nhân viên trong mỗi phòng ban (kể cả phòng ban chưa có nhân viên nào), phép JOIN nào nên được sử dụng?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 16: Câu lệnh SQL nào sau đây có thể gây ra lỗi nếu có cột trùng tên giữa các bảng tham gia phép JOIN mà không sử dụng bí danh?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 17: Trong mệnh đề `ON` của câu lệnh JOIN, điều kiện kết nối thường dựa trên mối quan hệ gì giữa các bảng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 18: Cho bảng `Nhân viên` (MaNV, TenNV, MaPB) và `PhongBan` (MaPB, TenPB). Để tìm tên nhân viên và tên phòng ban của nhân viên đó, nhưng chỉ cho những nhân viên thuộc phòng ban 'Kinh doanh', mệnh đề WHERE nên được đặt ở đâu trong câu lệnh JOIN?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 19: Để thực hiện phép kết nối ĐỀ-CART giữa hai bảng `A` và `B`, cú pháp SQL nào sau đây là đúng?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 20: Trong ngữ cảnh của phép JOIN, thuật ngữ 'bảng bên trái' và 'bảng bên phải' thường được dùng để phân biệt trong loại phép JOIN nào?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 21: Cho bảng `Sinh viên` (MaSV, TenSV) và `Khoa` (MaKhoa, TenKhoa). Sinh viên có thể không thuộc khoa nào. Để liệt kê TẤT CẢ sinh viên và khoa của họ (nếu có), phép JOIN nào phù hợp nhất?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 22: Điều gì xảy ra nếu bạn thực hiện phép `INNER JOIN` giữa hai bảng mà không có mệnh đề `ON` hoặc `WHERE`?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 23: Để tìm các cặp nhân viên làm việc CÙNG phòng ban, phép JOIN nào và điều kiện kết nối nào sau đây là phù hợp nhất (bảng `Nhân viên` có cột `MaPB`)?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 24: Giả sử bạn muốn truy vấn dữ liệu từ 4 bảng liên quan. Số lượng phép `JOIN` tối thiểu cần thiết trong câu lệnh SQL là bao nhiêu?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 25: Trong SQL, từ khóa `NATURAL JOIN` thực hiện phép JOIN dựa trên điều kiện kết nối nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 26: Để loại bỏ các bản ghi trùng lặp trong kết quả của phép JOIN, mệnh đề nào thường được sử dụng kết hợp với câu lệnh SELECT?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 27: Trong cơ sở dữ liệu về đặt phòng khách sạn, bảng `Khách hàng`, `Phòng`, và `DatPhong` (bảng trung gian). Để truy vấn tên khách hàng, số phòng và ngày đặt phòng, câu lệnh SQL nào hiệu quả nhất?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 28: Điều gì sẽ xảy ra nếu điều kiện `ON` trong câu lệnh `LEFT JOIN` không được đáp ứng cho một số bản ghi trong bảng bên trái?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 29: Trong cơ sở dữ liệu, khi nào việc sử dụng phép JOIN trở nên cần thiết?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 23: Thực hành truy xuất dữ liệu qua liên kết các bảng

Tags: Bộ đề 10

Câu 30: Để truy vấn danh sách các sản phẩm và tên loại sản phẩm, đồng thời sắp xếp kết quả theo tên loại sản phẩm, sau đó đến tên sản phẩm, mệnh đề nào cần được thêm vào câu lệnh JOIN?

Xem kết quả