如何在SQL中使用distinct
如何在SQL中使用distinct? SQL DISTINCT子句用于从结果集中删除重复项列。 独特关键字与选…
如何在SQL中使用distinct?
SQL DISTINCT子句用于从结果集中删除重复项列。
独特关键字与选择关键字结合使用。当我们避免特定列/表中存在重复值时,这将很有帮助。当我们使用distinct关键字时,将获取唯一值。
- SELECT DISTINCT仅返回不同(不同)的值。
- DISTINCT从表中消除重复的记录。
- DISTINCT可以与聚合一起使用: COUNT,AVG,MAX等。
- DISTINCT在单列上运行。
- DISTINCT不支持多列。
句法:
SELECT DISTINCT expressions
FROM tables
[WHERE conditions];
参数:
表达式:我们要检索的列或计算称为表达式。
表格:我们要检索记录的表格。 FROM子句中只有一个表。
条件:选择的记录可能符合条件,并且是可选的。
注意:
- 在DISTINCT子句中提供一个表达式时,查询将返回表达式的唯一值。
- 如果此处的DISTINCT子句中提供了多个表达式,则查询将检索列出表达式的唯一组合。
- 在SQL中, DISTINCT子句不能忽略NULL值。因此,当我们在SQL语句中使用DISTINCT子句时,结果集将包含NULL作为不同的值。
例:
考虑下面的EMPLOYEES表。
首先,让我们看下面的SELECT查询返回重复的薪水记录。
SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY;
当我们执行上述SQL查询时,它将获取所有记录,包括重复记录。在上表中,牛顿和约翰逊的薪水是20000。
现在,让我们在上面的SELECT查询中使用DISTINCT关键字。
SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY;
上面的SQL查询将删除重复的记录并显示以下结果。
示例:在列中查找唯一值
查看DISTINCT子句以在表的一列中找到唯一值。
我们有一个称为供应商的表,其中包含以下数据:
从上表中,我们将找到唯一的状态。
SELECT DISTINCT state FROM suppliers ORDER BY state;
这是六个记录。
该示例从供应商表返回唯一状态,并从结果集中删除重复的记录。
示例:在多列中查找唯一值
SQL DISTINCT子句用于从SELECT语句的许多字段中删除重复的记录。
输入SQL语句:
SELECT DISTINCT city, state FROM suppliers ORDER BY city, state;
输出:
这些是8条记录:
该示例返回每个唯一的城市和州的组合。我们看到Redwood City和California出现在结果集中。
示例:DISTINCT子句处理NULL值
DISTINCT子句将NULL视为SQL中的唯一值。我们有一个称为产品的表,其中包含以下数据。
从fruit_id字段中选择唯一值,其中包含空值。输入以下SQL语法:
SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id;
选择了四个记录。这些是我们在下面看到的结果:
在上面的示例中,查询返回category_id列中的唯一值。我们在结果集中的第一行看到NULL是由DISTINCT子句返回的异常值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!