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

相關文章
相關標籤/搜索