T-SQL - Mệnh đề DISTINCT

Máy chủ MS SQL DISTINCT từ khóa được sử dụng cùng với câu lệnh SELECT để loại bỏ tất cả các bản ghi trùng lặp và chỉ tìm nạp các bản ghi duy nhất.

Có thể có một tình huống khi bạn có nhiều bản ghi trùng lặp trong một bảng. Trong khi tìm nạp các bản ghi như vậy, sẽ hợp lý hơn nếu chỉ tìm nạp các bản ghi duy nhất thay vì tìm nạp các bản ghi trùng lặp.

Cú pháp

Sau đây là cú pháp cơ bản của từ khóa DISTINCT để loại bỏ các bản ghi trùng lặp.

SELECT DISTINCT column1, column2,.....columnN  
FROM table_name 
WHERE [condition]

Thí dụ

Hãy xem xét bảng KHÁCH HÀNG có các bản ghi sau.

ID  NAME       AGE       ADDRESS            SALARY 
1   Ramesh     32        Ahmedabad          2000.00 
2   Khilan     25        Delhi              1500.00 
3   kaushik    23        Kota               2000.00 
4   Chaitali   25        Mumbai             6500.00 
5   Hardik     27        Bhopal             8500.00 
6   Komal      22        MP                 4500.00 
7   Muffy      24        Indore             10000.00

Hãy để chúng tôi xem cách truy vấn SELECT sau đây trả về các bản ghi lương trùng lặp.

SELECT SALARY FROM CUSTOMERS 
   ORDER BY SALARY

Lệnh trên sẽ tạo ra kết quả sau trong đó mức lương 2000 đến gấp đôi, đây là một bản ghi trùng lặp từ bảng gốc.

SALARY 
1500.00 
2000.00 
2000.00 
4500.00 
6500.00 
8500.00 
10000.00

Bây giờ chúng ta hãy sử dụng từ khóa DISTINCT với truy vấn SELECT ở trên và xem kết quả.

SELECT DISTINCT SALARY FROM CUSTOMERS 
   ORDER BY SALARY

Lệnh trên tạo ra kết quả sau mà chúng ta không có bất kỳ mục nhập trùng lặp nào.

SALARY 
1500.00 
2000.00 
4500.00 
6500.00 
8500.00 
10000.00