SQL Server distinct子句

℡╲_俬逩灬. 提交于 2019-12-03 21:19:01

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

语法

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

SELECT DISTINCT expressions
FROM tables
[WHERE conditions];

参数及说明

expressions

要检索或计算的列

tables

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

WHERE conditions

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

注意

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

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

  • 在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

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!