Trong PostgreSQL, từ khóa DISTINCT được sử dụng trong truy vấn SQL để loại bỏ các bản ghi trùng lặp từ kết quả của truy vấn. Khi bạn sử dụng DISTINCT, chỉ những giá trị duy nhất (không trùng lặp) sẽ được trả về. Dưới đây là cách hoạt động và một số ví dụ cụ thể về cách sử dụng DISTINCT.

Lấy danh sách các thành phố duy nhất

Dưới đây là truy vấn SQL để lấy danh sách tất cả các thành phố duy nhất từ bảng customers:

SELECT DISTINCT city
FROM customers;

Lấy danh sách kết hợp của cột first_namelast_name

Nếu bạn muốn có danh sách các cặp tên và họ mà không có bản sao, bạn có thể sử dụng truy vấn sau:

SELECT DISTINCT first_name, last_name
FROM employees;

Sử dụng DISTINCT với điều kiện

Để lấy danh sách các quốc gia duy nhất của khách hàng sống tại New York, bạn có thể sử dụng truy vấn sau:

SELECT DISTINCT country
FROM customers
WHERE city = 'New York';

Sử dụng DISTINCT ON

PostgreSQL cho phép bạn sử dụng cú pháp DISTINCT ON để chọn một nhóm cột cụ thể. Dưới đây là ví dụ:

SELECT DISTINCT ON (column1) column1, column2
FROM table_name
ORDER BY column1, column2;

Lưu ý về hiệu suất

Việc sử dụng DISTINCT có thể ảnh hưởng đến hiệu suất của truy vấn, đặc biệt là khi làm việc với các bảng lớn và nhiều cột.