Câu hỏi phỏng vấn SQL
Câu hỏi

Sự khác biệt giữa INNER JOIN, `OUTER J...

Câu trả lời

Trong SQL, các lệnh JOIN được sử dụng để kết hợp các hàng từ hai hoặc nhiều bảng dựa trên một điều kiện liên kết. Các loại JOIN khác nhau xác định cách các bảng được kết hợp và loại dữ liệu nào được trả về. Dưới đây là sự khác biệt cơ bản giữa INNER JOIN, OUTER JOIN, và FULL OUTER JOIN:

INNER JOIN

INNER JOIN trả về các hàng khi có ít nhất một sự khớp trong cả hai bảng. Nếu một hàng trong bảng A khớp với nhiều hàng trong bảng B, hàng đó từ bảng A sẽ được lặp lại cho mỗi hàng khớp tương ứng trong bảng B và ngược lại. Điều này có nghĩa là chỉ những hàng có dữ liệu khớp giữa hai bảng mới được hiển thị.

OUTER JOIN

OUTER JOIN có thể là LEFT OUTER JOIN, RIGHT OUTER JOIN, hoặc FULL OUTER JOIN. Chúng khác nhau về việc giữ lại dữ liệu không khớp từ bảng nào:

  • LEFT OUTER JOIN (hoặc LEFT JOIN): Trả về tất cả các hàng từ bảng bên trái (bảng đầu tiên) và các hàng khớp từ bảng bên phải (bảng thứ hai). Nếu không có sự khớp, kết quả sẽ hiển thị giá trị NULL cho tất cả các cột của bảng bên phải.
  • RIGHT OUTER JOIN (hoặc RIGHT JOIN): Trả về tất cả các hàng từ bảng...
senior

senior

Gợi ý câu hỏi phỏng vấn

expert

Index Cardinality là gì và tại sao nó lại quan trọng trong SQL?

middle

Sự khác biệt giữa UNIONUNION ALL trong SQL là gì?

junior

VIEW trong SQL là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào