2024年6月11日发(作者:)

oracle中distinct的用法

Oracle的DISTINCT命令是将结果中的重复值去除的SQL语句语句,一般用在SELECT

语句中作为一个子句,DISTINCT用来确保查询结果中只有不同的值被检索出来,多列不同

组合也可以称之为复合DISTINCT。

示例:

假设有下面一张表EMPLOYEE:

NAME |ADDRESS

---------------------

Jane |Street 1

Tim |Street 2

Jane |Street 2

John |Street 1

如果我们想要查询表中所有不同地址,我们可以使用 DISTINCT 来查询:

SELECT DISTINCT ADDRESS

FROM EMPLOYEE;

结果:

ADDRESS

-----------

Street 1

Street 2

在上面的查询中,我们使用了 SELECT和DISTINCT 语句来查询 EMPLOYEE 表中的数

据,DISTINCT 语句可以去除重复值。因此,使用DISTINCT,查询结果中,只有 Street 1

和 Street 2 两条不同的地址,表示 Jane 和John 的地址是不同的,因此,它们被认为

是唯一的地址。

DISTINCT 是可以处理多个不同的行,这称之为复合 DISTINCT,下面是一个示例:

复合 distinct 可以查询表中不同的姓名、地址组合,它把表中的每一行作为一个独

立的记录,而且要求每行的内容都与前面的记录不同,因此,它不再认为 Jane 和John

的地址是相同的,而是独立的记录。