Tags:

Mệnh đề Distinct trong SQL – Trùng lặp dữ liệu

Từ khóa distinct  được sử dụng cùng với mệnh đề SELECT. Sẽ rất hữu ích khi cần tránh các giá trị trùng lặp 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 tìm nạp.

Cú pháp

SELECT DISTINCT column1, column2 
FROM table_name 
  • column1, column2 : Tên các trường của bảng.
  • table_name: Bảng từ nơi chúng ta muốn tìm nạp các bản ghi.

Truy vấn này sẽ trả về tất cả các kết hợp duy nhất của các hàng trong bảng với các trường column1, column2.

LƯU Ý: Nếu từ khóa khác biệt được sử dụng với nhiều cột, thì chúng sẽ được kết hợp lại. Sẽ có không trường hợp có 2 dòng dữ liệu trùng lặp tất cả các cột được liệt kê trong distinct.

Table – Student

ROLL_NO NAME ADDRESS PHONE AGE
1 RAM DELHI XXXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXXX 20
4 SURESH DELHI XXXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXXX 18

Ví dụ lấy tên của tất cả các học sinh trong database, bỏ qua các tên trùng lặp.

SELECT DISTINCT NAME 
FROM Student;

Output : 

NAME
Ram
RAMESH
SUJIT
SURESH

Ví dụ lấy distinct kết hợp nhiều cột, trong đây mình sẽ lấy unique cho toàn bộ các cột

SELECT DISTINCT * 
FROM Student;

Output : 
 

ROLL_NO NAME ADDRESS PHONE AGE
1 Ram Delhi XXXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXXX 20
4 SURESH Delhi XXXXXXXXXX 18

Ví dụ distinct kết hợp 2 cột Address và Age

SELECT DISTINCT Address, Age
FROM Student;

Output

ADDRESS AGE
Delhi 18
GURGAON 18
ROHTAK 18

Nguồn tham khảo

https://www.geeksforgeeks.org/sql-distinct-clause/

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x