首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
安装 PostgreSQL
PostgreSQL 语法
PostgreSQL 创建数据库
PostgreSQL 选择数据库
PostgreSQL 删除数据库
PostgreSQL 创建数据表
PostgreSQL 删除数据表
PostgreSQL 模式
PostgreSQL INSERT INTO 语句
PostgreSQL SELECT 语句
PostgreSQL 表达式
PostgreSQL WHERE 子句
PostgreSQL AND & OR 运算符
PostgreSQL UPDATE 语句
PostgreSQL DELETE 语句
PostgreSQL LIKE 子句
PostgreSQL LIMIT 子句
PostgreSQL ORDER BY 语句
PostgreSQL GROUP BY 语句
PostgreSQL WITH 子句
PostgreSQL HAVING 子句
PostgreSQL DISTINCT 关键字
PostgreSQL 连接(JOIN)
当前位置:
首页>>
技术小册>>
PostgreSQL入门教程
小册名称:PostgreSQL入门教程
在 PostgreSQL 中,DISTINCT 关键字与 SELECT 语句一起使用,用于去除重复记录,只获取唯一的记录。 我们平时在操作数据时,有可能出现一种情况,在一个表中有多个重复的记录,当提取这样的记录时,DISTINCT 关键字就显得特别有意义,它只获取唯一一次记录,而不是获取重复记录。 语法 用于去除重复记录的 DISTINCT 关键字的基本语法如下: ``` SELECT DISTINCT column1, column2,.....columnN FROM table_name WHERE [condition] ``` 实例 创建 COMPANY 表(下载 COMPANY SQL 文件 ),数据内容如下: ``` maxiaokedb# select * from COMPANY; ``` ``` id | name | age | address | salary ----+-------+-----+-----------+-------- 1 | Paul | 32 | California| 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | South-Hall| 45000 7 | James | 24 | Houston | 10000 (7 rows) ``` 让我们插入两条数据: ``` INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (8, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (9, 'Allen', 25, 'Texas', 15000.00 ); ``` 现在数据如下: ``` id | name | age | address | salary ----+-------+-----+------------+-------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 5 | David | 27 | Texas | 85000 6 | Kim | 22 | South-Hall | 45000 7 | James | 24 | Houston | 10000 8 | Paul | 32 | California | 20000 9 | Allen | 25 | Texas | 15000 (9 rows) ``` 接下来我们找出 COMPANY 表中的所有 NAME: ``` maxiaokedb=# SELECT name FROM COMPANY; ``` 得到结果如下: ``` name ------- Paul Allen Teddy Mark David Kim James Paul Allen (9 rows) ``` 现在我们在 SELECT 语句中使用 DISTINCT 子句: ``` maxiaokedb=# SELECT DISTINCT name FROM COMPANY; ``` 得到结果如下: ``` name ------- Teddy Paul Mark David Allen Kim James (7 rows) ``` 从结果可以看到,重复数据已经被过滤。
上一篇:
PostgreSQL HAVING 子句
下一篇:
PostgreSQL 连接(JOIN)
该分类下的相关小册推荐:
高性能的Postgres SQL
SQL基础教程(上)
SQL基础教程(中)
SQL基础教程(下)