Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
LEFT JOIN trong SQL là một lệnh hữu ích khi lập trình. Dưới đây là những cách dùng LEFT JOIN trong SQL.
LEFT JOIN trong SQL là kiểu JOIN trả về tất cả các bản ghi từ bảng bên trái (bảng 1) và các bản ghi phù hợp từ bảng bên phải (bảng 2). Nếu mệnh đề ON không khớp với bản ghi nào trong bảng bên phải thì LEFT JOIN sẽ vẫn trả về một hàng trong kết quả, nhưng giá trị là NULL trong mỗi cột từ bảng bên phải.
Điều này nghĩa là LEFT JOIN trả về tất cả giá trị từ bảng bên trái, cộng với các giá trị phù hợp từ bảng bên phải hoặc NULL trong trường hợp không có giá trị phù hợp nào.

Cú pháp cơ bản của LEFT JOIN như sau:
SELECT cot1, cot2,... cotnFROM bang1LEFT JOIN bang2ON bang1.cot_chung = bang2.cot_chung;
Tham số:
Giả sử hai bảng là NHANVIEN và TIENTHUONG có các bản ghi sau:
Bảng 1: NHANVIEN
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 1 | Thanh | 32 | Haiphong | 2000.00 | | 2 | Loan | 25 | Hanoi | 1500.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 4 | Manh | 25 | Hue | 6500.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 6 | Cao | 22 | HCM | 4500.00 | | 7 | Lam | 24 | Hanoi | 10000.00 | +----+----------+-----+-----------+----------+
Bảng 2: TIENTHUONG
+-----+---------------------+-------------+--------+ |TT_ID| NGAY | NHANVIEN_ID | SOTIEN | +-----+---------------------+-------------+--------+ | 102 | 2019-01-08 00:00:00 | 3 | 3000 | | 100 | 2019-01-08 00:00:00 | 3 | 1500 | | 101 | 2019-02-20 00:00:00 | 2 | 1560 | | 103 | 2018-12-20 00:00:00 | 4 | 2060 | +-----+---------------------+-------------+--------+
Bây giờ, chúng ta hãy join hai bảng này bằng cách sử dụng LEFT JOIN như sau:
SQL> SELECT ID, TEN, SOTIEN, NGAY FROM NHANVIEN LEFT JOIN TIENTHUONG ON NHANVIEN.ID = TIENTHUONG.NHANVIEN_ID;
Kết quả trả về là:
+----+----------+--------+---------------------+ | ID | TEN | SOTIEN | NGAY | +----+----------+--------+---------------------+ | 1 | Thanh | NULL | NULL | | 2 | Loan | 1560 | 2019-02-20 00:00:00 | | 3 | Nga | 3000 | 2019-01-08 00:00:00 | | 3 | Nga | 1500 | 2019-01-08 00:00:00 | | 4 | Manh | 2060 | 2018-12-20 00:00:00 | | 5 | Huy | NULL | NULL | | 6 | Cao | NULL | NULL | | 7 | Lam | NULL | NULL | +----+----------+--------+---------------------+
LEFT JOIN với mệnh đề WHERE
Lệnh LEFT JOIN SQL có thể dùng kèm với mệnh đề WHERE. Ví dụ:
SELECT Customers.customer_id, Customers.first_name, Orders.amount FROM Customers LEFT JOIN Orders ON Customers.customer_id = Orders.customer WHERE Orders.amount >= 500;
Đây là lệnh SQL nối hai bảng và chọn hàng tại vị trí amount lớn hơn hoặc bằng 500.
Xét ví dụ bên dưới, truy vấn này đã bổ sung thêm mệnh đề WHERE để chỉ trả về kết quả tại vị trí cột “location” trong bảng bộ phận (tương đương Bangalore). Hành động này sẽ lọc kết quả chỉ hiện nhân viên thuộc về bộ phận ở Bangalore, và các phòng ban không có nhân viên sẽ không xuất hiện trong kết quả.
Truy vấn:
SELECT e.EmpID, e.Name, d.department_name, d.department_head, d.location FROM Emp e LEFT JOIN department d ON e.department_id = d.department_id WHERE d.location = 'Bangalore';
Kết quả:

LEFT JOIN với AS Alias
Chúng ta có thể dùng các bí danh AS bên trong LEFT JOIN để tạo đoạn văn ngắn và gọn gàng. Ví dụ:
SELECT C.cat_name, P.prod_title FROM Categories1 AS C LEFT JOIN Products AS P ON C.cat_id= P.cat_id;
Đây là lệnh SQL chọn các hàng thông thường giữa bảng Category và Products.
LEFT JOIN Vs LEFT OUTER JOIN
Chúng ta cũng có thể dùng LEFT OUTER JOIN thay cho LEFT JOIN. Về cơ bản, cả hai mệnh đề này đều giống nhau. Điều đó có nghĩa:
SELECT Customers.customer_id, Customers.first_name, Orders.amount FROM Customers LEFT JOIN Orders ON Customers.customer_id = Orders.customer;
Tương đương với:
SELECT Customers.customer_id, Customers.first_name, Orders.amount FROM Customers LEFT OUTER JOIN Orders ON Customers.customer_id = Orders.customer;
Giờ trong truy vấn này, bạn sẽ dùng các alias “e” cho bảng Emp và “d” cho bảng bộ phận. Sau đó, dùng lệnh SELECT tham chiếu những bí danh này cho từng cột được trả về, làm truy vấn trở nên dễ đọc và dễ nhập hơn. Các alias đặc biệt hữu ích khi bạn đang làm việc với bảng có tên dài hoặc phức tạp bởi chúng có thẻ đơn giản hóa code và khiến nó dễ hiểu hơn.
SELECT e.EmpID, e.Name, d.department_name, d.department_head, d.location FROM Emp e LEFT JOIN department d ON e.department_id = d.department_id;

Nhìn chung, LEFT JOIN SQL là một lệnh vô cùng hữu ích khi lập trình mà nhất định bạn phải biết. Hi vọng bài viết giúp bạn hiểu rõ hơn về LEFT JOIN trong SQL.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Cách tạo video chuyển cảnh giữa 2 ảnh trên Google Flow
Những điều cơ bản về viết câu lệnh (prompt) AI
Các kỹ thuật tạo prompt AI nâng cao
4 kỹ năng quan trọng giúp bạn "thành thạo AI"
TOP công cụ AI tạo bài hát tốt nhất để sáng tác những bản nhạc ấn tượng
Chuyển đổi danh sách sản phẩm thành dashboard hàng tồn kho trực tuyến bằng Google Sheets Canvas
Tinh chỉnh bằng các prompt bổ sung trong Google Sheets Canvas
Cách xuất phản hồi AI Mode sang Docs trên Google Search
So sánh các gói Higgsfield - Nên lựa chọn gói nào để tạo video AI
Chia sẻ an toàn: Quyền hạn, quyền riêng tư và những gì được giữ riêng tư trong Google Sheets Canvas
Gemini vs Claude: Đâu là trợ lý AI tốt hơn?
ChatGPT Work là gì? Sử dụng ChatGPT Work như thế nào?
Lựa chọn ứng dụng doanh nghiệp đầu tiên để thực hiện bằng Google Sheets Canvas
Cách chuyển phản hồi Google AI Mode thành email
Claude vs Perplexity: Đâu là công cụ AI tốt hơn?
4 phần mềm mã Morse miễn phí để gửi tin nhắn được mã hóa
Tự xây dựng ứng dụng doanh nghiệp của riêng bạn bằng Google Sheets Canvas
Cách đổi kích thước ảnh trên ChatGPT không cần prompt
Cách sử dụng Claude Projects: Hướng dẫn thực tế
Cách đánh dấu vùng cần sửa ảnh trên ChatGPT
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
8 ứng dụng Microsoft Store miễn phí giúp Windows tốt hơ
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
6 cách mở Computer/System Properties trong Windows 10
Đừng chia sẻ ảnh cho đến khi bạn chạy kiểm tra siêu dữ liệu này!
Cách sửa lỗi There Are Currently No Power Options Available Windows