Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Except SQL Server là gì? Cách dùng Except trong SQL Server như thế nào? Hãy cùng Quantrimang.com tìm hiểu nhé!
EXCEPT là toán tử tập hợp trong SQL trả về các hàng riêng biệt có trong tập kết quả của truy vấn đầu tiên nhưng không có trong tập kết quả của truy vấn thứ hai. Nó còn được gọi là toán tử chênh lệch tập hợp. EXCEPT được sử dụng cùng với câu lệnh SELECT để so sánh các tập hợp kết quả của hai hoặc nhiều truy vấn.
Ở bài viết này, chúng ta sẽ cùng nhau tìm hiểu và thảo luận về cách dùng toán tử EXCEPT trong SQL Server, cùng với các ví dụ minh họa chức năng của nó.
Toán tử EXCEPT trong SQL Server giúp người dùng kết hợp hai lệnh SELECT và trả về các hàng riêng biệt từ lệnh SELECT đầu tiên không có sẵn ở lệnh SELECT thứ hai.
Quy tắc của nó tương tự toán tử UNION và có thể được so với toán tử trừ trong đại số quan hệ.
Tất cả phiên bản của SQL Server đều hỗ trợ EXCEPT. MySQL không hỗ trợ toán tử EXCEPT.
Những điều kiện cần phải có khi dùng EXCEPT in SQL Server:

Minh họa truy vấn EXCEPT
Giải thích: Truy vấn EXCEPT trả về bản ghi trong khu vực màu xanh, chỉ nằm trong bộ dữ liệu 1 và không nằm trong bộ dữ liệu 2.
Mỗi lệnh SELECT trong truy vấn EXCEPT phải có cùng số trường trong bộ kết quả với kiểu dữ liệu giống nhau.
SELECT bieu_thuc1, bieu_thuc2, … bieu_thucnFROM bang[WHERE dieu_kien]EXCEPTSELECT bieu_thuc1, bieu_thuc2, … bieu_thucnFROM bang[WHERE dieu_kien];
bieu_thuc
Cột hoặc giá trị mà bạn muốn so sánh giữa 2 lệnh SELECT. Chúng không nhất thiết phải nằm trong cùng 1 trường thông tin ở mỗi lệnh SELECT nhưng các cột tương ứng phải có dữ liệu giống nhau.
bang
Bảng muốn lấy bản ghi từ đó. Phải có ít nhất 1 bảng trong mệnh đề FROM.
WHERE dieu_kien
Tùy chọn. Điều kiện phải đáp ứng để bản ghi được chọn.
Lưu ý:
Ví dụ - với 1 biểu thức
SELECT sanpham_idFROM sanphamEXCEPT SELECT sanpham_idFROM hangtonkho;
Ở ví dụ với toán tử EXCEPT này, kết quả trả về tất cả các giá trị sanpham_id nằm trong bảng sanpham và không nằm trong bảng hangtonkho. Nghĩa là nếu giá trị sanpham_id nào có ở cả 2 bảng thì sẽ không được trả về.
Ví dụ - với nhiều biểu thức
SELECT danhba_id, ho, tenFROM danhbaWHERE ho = ‘Anderson’EXCEPT SELECT nhanvien_id, ho, tenFROM nhanvien;
Ở ví dụ này, truy vấn trả về các bản ghi trong bảng danhba với ID của số liên lạc, họ và tên không trùng với ID, họ và tên của nhân viên trong bảng nhanvien.
Ví dụ - dùng mệnh đề ORDER BY
SELECT nhacung_id, nhacung_tenFROM nhacungWHERE bang = ‘Florida’EXCEPTSELECT congty_id, congty_tenFROM congtyWHERE congty_id <= 400ORDER BY 2;
Trong ví dụ này, do tên cột ở 2 lệnh SELECT khác nhau nên sẽ dễ hơn khi tham chiếu tới cột bằng mệnh đề ORDER BY qua vị trí trong bộ kết quả. Ở ví dụ trên, ta lọc kết quả nhacung_ten / congty_ten theo thứ tự tăng dần qua cụm từ ORDER BY 2.
Vì nhacung_ten / congty_ten đứng thứ 2 trong bộ kết quả.
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Số liệu, giám sát và ROI trong hệ thống hỗ trợ khách hàng tích hợp AI
AI Agent là gì? Tại sao lại cần đến nó vào thời điểm này?
Cách khai thác Claude Cowork hiệu quả cho công việc hàng ngày
Kiến trúc agent: Mục tiêu, công cụ và lý luận
Cách tạo video hoạt hình bằng Anijam AI rất đáng thử
Xây dựng agent đầu tiên của bạn
Prompt tạo ảnh phong cách Fantasy ảo diệu
Sử dụng công cụ: Cung cấp khả năng cho các agent
Suy luận và lập kế hoạch nhiều bước để xây dựng AI agent
Hàng rào bảo vệ, tính an toàn và sự tham gia của con người trong quá trình vận hành AI Agent
Hướng dẫn thiết kế game Cuộc đua hái sao
Hướng dẫn phát hiện văn bản AI qua AI Detector Canva
Hướng dẫn tạo ảnh phong cách biếm họa từ ảnh thật bằng AI
Cuộc cách mạng trong hỗ trợ khách hàng bằng AI
Cách tạo giọng đọc tự nhiên trên AusyncLab cho slide thuyết trình
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Cách tạo ảnh phong cách tranh biếm họa trên ChatGPT
Hướng dẫn tạo flashcard trên Canva AI
Phân loại và định tuyến yêu cầu hỗ trợ khách hàng bằng AI
Cơ sở tri thức và AI tự phục vụ