Từ khóa DISTINCT trong SQL
Distinct trong SQL được dùng để làm gì? Dưới đây là những điều bạn cần biết về cách dùng select distinct trong SQL.
Từ khóa SQL DISTINCT được sử dụng trong các truy vấn để truy xuất các giá trị duy nhất từ cơ sở dữ liệu. Từ khóa này giúp loại bỏ các bản ghi trùng lặp khỏi tập kết quả. SQL DISTINCT cũng đảm bảo chỉ có các mục duy nhất được truy xuất. Cho dù bạn đang phân tích các tập dữ liệu hay thực hiện việc dọn dẹp dữ liệu, thì từ khóa DISTINCT đều quan trọng để đảm bảo tính toàn vẹn và độ chính xác của dữ liệu.
Ở bài viết này, chúng ta sẽ tìm hiểu về từ khóa DISTINCT trong SQL, cú pháp, ví dụ thực tế và các trường hợp sử dụng phổ biến. Chúng ta cũng sẽ thảo luận về cách DISTINCT hoạt động với nhiều hàm SQL khác nhau.
SQL DISTINCT là gì trong SQL?
Từ khóa distinct được sử dụng kết hợp với từ khóa select. Nó hữu ích khi cần tránh các giá trị trùng lặp có trong bất kỳ cột/bảng cụ thể nào. Khi chúng ta sử dụng từ khóa distinct, chỉ các giá trị duy nhất được lấy.
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:
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:
+----+----------+-----+-----------+----------+ | 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 | 10000.00 | +----+----------+-----+-----------+----------+
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.
> 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 | | 10000.00 | +----------+
Bây giờ, hãy sử dụng từ khóa DISTINCT với truy vấn SELECT và xem kết quả.
> SELECT DISTINCT LUONG
FROM NHANVIEN
ORDER BY LUONG;
+----------+ | LUONG | +----------+ | 1500.00 | | 2000.00 | | 4500.00 | | 6500.00 | | 8500.00 | | 10000.00 | +----------+
Nhờ DISTINCT mà kết quả thu được không có bất kỳ mục nhập trùng lặp nào.
DISTINCTvới hàm COUNT()
Hàm COUNT() được dùng để lấy số bản ghi được tinh chỉnh lại bằng truy vấn SELECT. Bạn cần chuyển một biểu thức sang hàm này để truy vấn SELECT trả về số bản ghi thỏa mãn biểu thức đã chỉ định.
Nếu chuyển từ khóa DISTINCT sang hàm COUNT() dưới dạng một biểu thức, nó trả về số giá trị riêng trong một cột của bảng.
Cú pháp sử dụng DISTINCT với hàm COUNT():
SELECT COUNT(DISTINCT column_name)
FROM table_name WHERE condition;
Trong đó, column_name là tên cột mà bạn muốn đếm giá trị duy nhất. Table_name là tên bảng chứa dữ liệu.
Ví dụ:
Trong truy vấn sau, chúng ta truy xuất số độ tuổi khác nhau của khách hàng:
SELECT COUNT(DISTINCT AGE) as UniqueAge FROM CUSTOMERS;
Kết quả: UniqueAge = 6
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é.
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Bluestacks
-
Cách hiện file ẩn, thư mục ẩn trên Windows 10/8/7
Hôm qua -
Cách dịch trang web sang tiếng Việt, tiếng Anh hoặc ngôn ngữ bất kỳ
Hôm qua 1 -
Cách phân quyền cho người dùng trong MS SQL Server
Hôm qua -
Cách chọn kênh WiFi tốt nhất cho router
Hôm qua -
Spam là gì? Nó được hiểu như thế nào trong Zalo, LoL, Facebook…
Hôm qua -
Cách khắc phục mã lỗi 0x80004005
Hôm qua -
Toán tử trong SQL
Hôm qua -
Sửa lỗi phím tắt Windows + Shift + S không hoạt động trên Windows 10
Hôm qua -
Cách hiển thị biểu tượng Bluetooth bị thiếu trên Taskbar Windows
Hôm qua