SQL SELECT DISTINCT dɪˈstɪŋkt语句
在表中,可能会包含重複值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。
关键字 DISTINCT 用于返回唯一不同的值。
SELECT DISTINCT 表示查询结果中,去掉了重複的行
Distinct表示去掉重複的行
基本介绍
- 中文名:DISTINCT
- 性质:编程语句
- 领域:计算机编程
- 关键字:用于返回唯一不同的值
语法
SELECT DISTINCT 列名称 FROM 表名称
关键字
如果要从 "Company" 列中选取所有的值,我们需要使用 SELECT 语句:
SELECT Company FROM Orders
Orders
Company | Num |
---|---|
IBM | 3532 |
W3School | 2356 |
Apple | 4698 |
W3School | 6953 |
结果
Company |
---|
IBM |
W3School |
Apple |
W3School |
请注意,在结果集中,W3School 被列出了两次。
如需从 Company" 列中仅选取唯一不同的值,我们需要使用 SELECT DISTINCT 语句:
SELECT DISTINCT Company FROM Orders
结果
Company |
---|
IBM |
W3School |
Apple |
在结果集中,"W3School" 仅被列出了一次。
注意事项
如果指定了 SELECT DISTINCT,那幺 ORDER BY 子句中的项就必须出现在选择列表中,否则会出现错误。
比如SQL语句:SELECT DISTINCT Company FROM Orders order by Company ASC是可以正常执行的。
但是如果SQL语句是:SELECT DISTINCT Company FROM Orders order by Num ASC是不能正确执行的,在ASP中会提示“ORDER BY 子句与 (Num) DISTINCT 冲突”错误。
SQL语句修改成:SELECT DISTINCT Company,Num FROM Orders order by Num ASC可以正常执行。