Hướng dẫn distinct trong mysql - khác biệt trong mysql
Trong hướng dẫn này, bạn sẽ học cách sử dụng mệnh đề 1 trong câu lệnh 2 trong MySQL để loại bỏ các hàng trùng lặp trong một tập kết quả.Giới thiệu về mệnh đề MySQL DISTINCTKhi truy vấn dữ liệu từ một bảng, bạn có thể nhận được các hàng trùng lặp. Để loại bỏ các hàng trùng lặp này, bạn sử dụng mệnh đề 1 trong câu lệnh 2.Đây là cú pháp của mệnh đề 1:
Trong cú pháp này, bạn chỉ định một hoặc nhiều cột mà bạn muốn chọn các giá trị riêng biệt sau từ khóa 6.Nếu bạn chỉ định một cột, mệnh đề 1 sẽ đánh giá tính duy nhất của các hàng dựa trên các giá trị của cột đó.Tuy nhiên, nếu bạn chỉ định hai hoặc nhiều cột, mệnh đề 1 sẽ sử dụng giá trị của các cột này để đánh giá tính duy nhất của các hàng.Khi thực hiện câu lệnh 2 với mệnh đề 1, MySQL đánh giá mệnh đề 1 sau mệnh đề 2, 3 và 2 và trước mệnh đề 5:Ví dụ về mệnh đề DISTINCT trong MySQLChúng tôi sẽ sử dụng bảng 6 từ cơ sở dữ liệu mẫu:Đầu tiên, truy xuất họ của các nhân viên từ bảng 6 bằng cách sử dụng câu lệnh 2 sau:
Đầu ra:
Như được trình bày rõ ràng trong đầu ra, một số nhân viên có cùng họ, ví dụ: 9.Thứ hai, truy xuất họ duy nhất của các nhân viên bằng cách thêm mệnh đề 1 như sau:
Như bạn có thể thấy rõ ràng từ đầu ra, mệnh đề 1 loại bỏ các họ trùng lặp khỏi tập kết quả.
Mệnh đề DISTINCT trong MySQL và giá trị NULLKhi bạn chỉ định một cột có các giá trị 2 trong mệnh đề 1, mệnh đề 1 sẽ chỉ giữ một giá trị 2 vì nó coi tất cả các giá trị 2 đều giống nhau.Ví dụ, cột state trong bảng 7 có các giá trị 2.Khi bạn sử dụng mệnh đề 1 để truy xuất các state, bạn sẽ thấy các state riêng biệt và 2 như sau:
Đầu ra:
Như được trình bày rõ ràng trong đầu ra, một số nhân viên có cùng họ, ví dụ: +-----------+ | lastname | +-----------+ | Bondur | | Bondur | | Bott | | Bow | | Castillo | | Firrelli | | Firrelli | | Fixter | .... | Jones | | Patterson | | Patterson | | Patterson | | Thompson | ... +-----------+ 23 rows in set (0.00 sec)9.Thứ hai, truy xuất họ duy nhất của các nhân viên bằng cách thêm mệnh đề 1 như sau:Như bạn có thể thấy rõ ràng từ đầu ra, mệnh đề 1 loại bỏ các họ trùng lặp khỏi tập kết quả.
Đầu ra:
Như được trình bày rõ ràng trong đầu ra, một số nhân viên có cùng họ, ví dụ: 9.
Đầu ra: 0Như được trình bày rõ ràng trong đầu ra, một số nhân viên có cùng họ, ví dụ: +-----------+ | lastname | +-----------+ | Bondur | | Bondur | | Bott | | Bow | | Castillo | | Firrelli | | Firrelli | | Fixter | .... | Jones | | Patterson | | Patterson | | Patterson | | Thompson | ... +-----------+ 23 rows in set (0.00 sec)9.
Như bạn có thể thấy rõ ràng từ đầu ra, mệnh đề SELECT
lastname
FROM
employees
ORDER BY
lastname; |