Hướng dẫn mysql select except - mysql chọn ngoại trừ
13.2.13.6 & NBSP; Các nhóm phụ có tồn tại hoặc không tồn tại Nếu một công cụ con trả về bất kỳ hàng nào,
Theo truyền thống, một truy vấn con 3 bắt đầu với 4, nhưng nó có thể bắt đầu bằng 5 hoặc 6 hoặc bất cứ điều gì. MySQL bỏ qua danh sách 7 trong một truy vấn con như vậy, vì vậy nó không có gì khác biệt.Đối với ví dụ trước, nếu 8 chứa bất kỳ hàng nào, thậm chí các hàng không có gì ngoài các giá trị 9, điều kiện 3 là 0. Đây thực sự là một ví dụ không thể xảy ra bởi vì một truy vấn con 2 hầu như luôn luôn chứa các mối tương quan. Dưới đây là một số ví dụ thực tế hơn:
Ví dụ cuối cùng là truy vấn 3 được lồng đôi. Đó là, nó có một mệnh đề 3 trong mệnh đề 5. Chính thức, nó trả lời câu hỏi mà một thành phố có tồn tại với một cửa hàng không có trong 6 không? Nhưng dễ dàng hơn để nói rằng một 5 được lồng vào câu hỏi là 8 0 cho tất cả 0?“does a city exist with a store that is not in 6”? But it is easier to say that a nested 5 answers the
question “is 8 0 for all 0?”Trong MySQL 8.0.19 và sau đó, bạn cũng có thể sử dụng 3 hoặc 5 với 3 trong truy vấn con, như thế này:
Các kết quả giống như khi sử dụng 4 mà không có mệnh đề 5 trong truy vấn con. Toán tử EXCEPT trong SQL Server được dùng để trả về các hàng trong lệnh SELECT đầu tiên mà không trả về trong lệnh SELECT thứ hai. Mỗi lệnh SELECT sẽ có một bộ dữ liệu. Toán tử EXCEPT lấy bản ghi từ bộ thứ 1 và bỏ các kết quả từ bộ 2. Truy vấn EXCEPTMinh 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. 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. Cú pháp toán tử EXCEPTSELECT bieu_ Tên biến hoặc giá trị biếnbieu_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 Ở 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 dan Ở 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 nh 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ả. Bài trước: Toán tử INTERSECT trong SQL Server Bài sau: Truy vấn con SUBQUERY trong SQL Server |