SQL Distinct 子句
distinct关键字与select关键字结合使用。当需要避免任何特定列/表中存在重复值时,这很有帮助。当我们仅使用distinct关键字时 唯一值 将被获取.
语法 :
SELECT DISTINCT column1, column2
FROM table_name
column1, column2 : 表字段的名称。
table_name : 我们要从中获取记录的表。
此查询将返回表中所有具有字段column1、column2的行的唯一组合。
注意: 如果distinct关键字与多列一起使用,则distinct组合将显示在结果集中。
表– Student
ROLL_NO | NAME | ADDRESS | PHONE | AGE |
---|---|---|---|---|
1 | RAM | DELHI | XXXXXXXXXX | 18 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
4 | SURESH | DELHI | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
Queries
- 从NAME字段中获取唯一名称-
SELECT DISTINCT NAME
FROM Student;
输出 :
NAME
Ram
RAMESH
SUJIT
SURESH
- 从整个表中获取唯一的行组合-
SELECT DISTINCT *
FROM Student;
输出 :
ROLL_NO | NAME | ADDRESS | PHONE | Age |
---|---|---|---|---|
1 | Ram | Delhi | XXXXXXXXXX | 18 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
4 | SURESH | Delhi | XXXXXXXXXX | 18 |
注意 : 在上述两个示例中,如果没有关键字distinct,将获取6条记录而不是4条,因为在原始表中有6条具有重复值的记录。