Sqlite 简明教程

SQLite - DISTINCT Keyword

SQLite DISTINCT 关键字与 SELECT 语句结合使用,以消除所有重复记录并仅提取唯一记录。

SQLite DISTINCT keyword is used in conjunction with SELECT statement to eliminate all the duplicate records and fetching only the unique records.

在表中,你可能会遇到重复记录的情况。在获取这些记录时,只获取唯一记录比获取重复记录更有意义。

There may be a situation when you have multiple duplicate records in a table. While fetching such records, it makes more sense to fetch only unique records instead of fetching duplicate records.

Syntax

以下是 DISTINCT 关键字消除重复记录的基本语法。

Following is the basic syntax of DISTINCT keyword to eliminate duplicate records.

SELECT DISTINCT column1, column2,.....columnN
FROM table_name
WHERE [condition]

Example

考虑具有以下记录的 COMPANY 表。

Consider COMPANY table with the following records.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0
8           Paul        24          Houston     20000.0
9           James       44          Norway      5000.0
10          James       45          Texas       5000.0

首先,让我们看看下面的 SELECT 查询如何返回重复的薪酬记录。

First, let us see how the following SELECT query returns duplicate salary records.

sqlite> SELECT name FROM COMPANY;

这将产生以下结果。

This will produce the following result.

NAME
----------
Paul
Allen
Teddy
Mark
David
Kim
James
Paul
James
James

现在,让我们对上述 SELECT 查询使用 DISTINCT 关键字并查看结果。

Now, let us use DISTINCT keyword with the above SELECT query and see the result.

sqlite> SELECT DISTINCT name FROM COMPANY;

这将产生以下结果,其中没有重复条目。

This will produce the following result, where there is no duplicate entry.

NAME
----------
Paul
Allen
Teddy
Mark
David
Kim
James