18/08/2018, 10:58

(DISTINCT) Truy xuất các dữ liệu khác nhau trong MySQL

Trong một bảng thì có nhiều cột, trong mỗi cột có khi sẽ có nhiều hàng có giá trị giống nhau. Từ khóa DISTINCT dùng để chọn ra các hàng có giá trị khác nhau. Cú pháp truy xuất các dữ liệu khác nhau SELECT DISTINCT name_column FROM name_table; Một số ví dụ Chúng ta có một bảng ...

Trong một bảng thì có nhiều cột, trong mỗi cột có khi sẽ có nhiều hàng có giá trị giống nhau.

Từ khóa DISTINCT dùng để chọn ra các hàng có giá trị khác nhau.

Cú pháp truy xuất các dữ liệu khác nhau

SELECT DISTINCT name_column
FROM name_table;

Một số ví dụ

Chúng ta có một bảng sinh_vien như sau:

(Bạn có thể bấm vào đây để download câu lệnh tạo bảng như bên dưới)

Full_name Gender Age City
Nguyen Thanh Nhan Nam 19 Can Tho
Pham Thu Huong Nu 20 Vinh Long
Nguyen Nhu Ngoc Nu 20 Soc Trang
Bui Thanh Bao Nam 19 Soc Trang
Le My Nhan Nu 22 Can Tho
Tan Thuc Bao Nam 35 An Giang
Trinh Giao Kim Nam 44 Bac Lieu

Ví dụ 1

Lấy danh sách TUỔI khác nhau

SELECT DISTINCT Age
FROM sinh_vien;

Sau khi thực thi, MySQl trả về một bảng kết quả như dưới đây:

Age
19
20
22
35
44

Ví dụ 2

Lấy các cặp TUỔI & GIỚI TINH khác nhau

SELECT DISTINCT Age, Gender
FROM sinh_vien;

Sau khi thực thi, MySQl trả về một bảng kết quả như dưới đây:

Age Gender
19 Nam
20 Nu
22 Nu
35 Nam
44 Nam

Lưu ý: Ở bảng sinh_vien có hai cặp 19-Nam và hai cặp 20-Nu. Nên bảng kết quả trả về loại bỏ một hàng 19-Nam và một hàng 20-Nu

0