SQL Server distinct子句

在SQL Server(Transact-SQL)中DISTINCT子句用于从结果集中删除重复记录。 DISTINCT子句只能和SELECT语句一块儿使用。html

语法

在SQL Server(Transact-SQL)中DISTINCT子句的语法是:sql

SELECT DISTINCT expressions
FROM tables
[WHERE conditions];

参数及说明

expressionsexpress

要检索或计算的列spa

tablesserver

但愿从中检索记录的表。在FROM子句中必须至少有列出一个表;htm

WHERE conditionsget

可选的。要选择的记录必须知足的条件it

注意

  • 当DISTINCT子句中只提供了一个表达式,查询将返回该表达式的惟一值;io

  • 当DISTINCT子句中提供了多个表达式,查询将检索列出的表达式惟一组合;table

  • 在SQL Server中,DISTINCT子句不忽略NULL值。所以在SQL语句中使用DISTINCT子句时,结果集将包括NULL并做为一个惟一的值;

 

示例 - 用单一表达式

让咱们来看看一个最简单的SQL Server DISTINCT子句的例子。使用SQL Server DISTINCT子句返回一个字段,并去除结果集中的重复行记录。

例如:

SELECT DISTINCT last_name
FROM employees
WHERE employee_id >= 50;

这篇SQL Server DISTINCT的例子就是从 employees 查询 employee_id 大于或等于50返回全部 last_name 的惟一值。

 

示例 - 使用多个表达式

让咱们来看看如何使用在SQL Server DISTINCT子句在SELECT语句从多个字段中删除重复行记录。

例如:

SELECT DISTINCT first_name, last_name
FROM employees
WHERE employee_id >=50
ORDER BY last_name;

这篇SQL Server DISTINCT子句的例子就是从 employees 表查询 employee_id 大于或等于50的结果,并按 last_name 升序返回 last_name 和 first_name 组合的惟一值。

在这种状况下,DISTINCT应用于DISTINCT关键字以后列出的每一个字段,并所以返回不一样(惟一)的组合。

from => http://www.windoweye.com/sql_server/distinct.html

相关文章
相关标签/搜索