目录

SQL SELECT DISTINCT 语句


SQL SELECT DISTINCT 语句

这个SELECT DISTINCT语句用于仅返回不同的(不同的)值。

示例

从 "Customers" 表中选择所有不同的国家/地区:

SELECT DISTINCT Country FROM Customers;
亲自试一试 »

在表中,一列通常包含许多重复值;有时您只想列出不同(不同)的值。


语法

SELECT DISTINCT column1, column2, ...
FROM table_name;


演示数据库

以下是选自顾客示例中使用的表:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

没有 DISTINCT 的 SELECT 示例

如果您省略DISTINCT关键字,SQL 语句从"Customers" 表的所有记录中返回"Country" 值:

示例

SELECT Country FROM Customers;
亲自试一试 »


计数不同

通过使用DISTINCT函数中的关键字称为COUNT,我们可以返回不同国家的数量。

示例

SELECT COUNT(DISTINCT Country) FROM Customers;

注:计数(不同的列名) 在 Microsoft Access 数据库中不受支持。

以下是 MS Access 的解决方法:

示例

SELECT Count(*) AS DistinctCountries
FROM (SELECT DISTINCT Country FROM Customers);

您将在本教程后面了解 COUNT 函数。


通过练习测试一下

练习:

从中选择所有不同的值Country栏目中的Customers表格。

  Country 
FROM Customers;

开始练习