select distinct là gì? Từ khóa DISTINCT trong SQL

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

Mục lục bài viết

Cú pháp sử dụng DISTINCT trong SQL

Cú pháp cơ bản của từ khóa DISTINCT để loại bỏ các bản ghi trùng lặp là như sau:

[external_link_head]
SELECT DISTINCT cot1, cot2,... cotN 

FROM ten_bang

WHERE [dieu_kien]

Ví dụ về DISTINCT trong SQL

Giả sử bảng NHANVIEN có các bản ghi như sau:

[external_link offset=1]
 +----+----------+-----+-----------+----------+ | 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 | 0877074074 | +----+----------+-----+-----------+----------+

Trước tiên, chúng ta hãy xem cách truy vấn SELECT trả về bản ghi mức lương trùng lặp như thế nào.

 SQL> SELECT LUONG FROM NHANVIEN

ORDER BY LUONG;

Trong kết quả thu được sau đây, LUONG 2000 xuất hiện 2 lần là một bản ghi trùng lặp từ bảng ban đầu.

 +----------+ | LUONG | +----------+ | 1500.00 | | 2000.00 | | 2000.00 | | 4500.00 | | 6500.00 | | 8500.00 | | 0877074074 | +----------+ 

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

SQL> SELECT DISTINCT LUONG FROM NHANVIEN

ORDER BY LUONG;
 +----------+ | LUONG | +----------+ | 1500.00 | | 2000.00 | | 4500.00 | | 6500.00 | | 8500.00 | | 0877074074 | +----------+ 

Nhờ DISTINCT mà kết quả thu được không có bất kỳ mục nhập trùng lặp nào.

[external_link offset=2]

Trong phần tiếp theo, chúng ta sẽ tìm hiểu về sắp xếp kết quả trong SQL, các bạn nhớ theo dõi nhé.

Xem thêm  Dấu hiệu nhận biết Virus và cách kiểm tra máy tính có bị nhiễm Virus không

Bài trước: Lệnh GROUP BY trong SQL

Bài tiếp: Sắp xếp kết quả trong SQL[external_footer]

Rate this post

Bài viết liên quan

Để lại ý kiến của bạn:

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *