过滤数据_Select Distinct子句

本文详细介绍了SQL中的DISTINCT子句,用于从查询结果中去除重复值。示例包括单列去重、多列去重以及处理包含NULL值的情况。通过实例展示了如何在sales.customers表中检索唯一的城市和城市-州组合,以及去重后的电话号码。DISTINCT子句将NULL视为相同值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Select Distinct子句
Select distinct子句检索指定列表中中的唯一不同值,换句话说,它从结果集中删除列中的重复值。DISTINCT 子句将所有 NULL 值视为相同的值。
语法如下所示:
SELECT DISTINCT
column_name1, --字段名
column_name2 ,

FROM
table_name; --表名

(1)DISTINCT一个字段的示例
以下语句返回 customers 表中所有客户所在的所有城市:
去重前运行结果和语句如下:
SELECT
city
FROM
sales.customers
ORDER BY
city;

去重后 ,运行结果语句如下:
SELECT
Distinct city
FROM
sales.customers
ORDER BY
city;

(2)DISTINCT多列示例
以下语句查找所有客户的不同城市和州。
去重前运行结果和语句如下:
SELECT
city,
state
FROM
sales.customers

去重后 ,运行结果语句如下:
SELECT DISTINCT
city,
state
FROM
sales.customers

(3)DISTINCT带有null值示例
以下示例查找客户的不同(唯一)电话号码:
SELECT DISTINCT
phone
FROM
sales.customers
ORDER BY
phone;

去重后,运行结果语句如下:验证了那句:DISTINCT 子句将所有 NULL 值视为相同的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值