随笔分类 -  PostgreSQL

摘要:子查询(Subquery)是指嵌套在其他SELECT、INSERT、UPDATE以及DELETE语句中的查询语句。子查询的作用与多表连接查询有点类似,也是为了从多个关联的表中返回或者过滤数据。例如,我们想要知道哪些员工的月薪大于平均月薪,可以通过子查询实现: SELECT e.first_name, 阅读全文
posted @ 2023-07-21 20:54 晓枫的春天 阅读(253) 评论(0) 推荐(0) 编辑
摘要:日期时间函数 PostgreSQL提供了以下日期和时间运算的算术运算符。 PostgreSQL还提供了大量用于日期和时间数据处理的函数。 计算时间间隔 age(timestamp, timestamp)函数用于计算两个时间点之间的间隔,age(timestamp)函数用于计算当前日期的凌晨12点到该 阅读全文
posted @ 2023-07-18 05:57 晓枫的春天 阅读(434) 评论(0) 推荐(0) 编辑
摘要:函数(function)是一些预定义好的代码模块,可以将输入进行计算和处理,最终输出一个结果值。PostgreSQL函数可以分为两类:标量函数(scalar function)和聚合函数(aggregation function)。标量函数针对每个输入都会返回相应的结果,聚合函数针对一组输入汇总出一 阅读全文
posted @ 2023-07-17 12:46 晓枫的春天 阅读(910) 评论(0) 推荐(0) 编辑
摘要:CASE表达式的作用就是为SQL语句增加类似于IF-THEN-ELSE的逻辑处理功能,可以根据不同的条件返回不同的结果。PostgreSQL支持两种形式的条件表达式:简单CASE表达式和搜索CASE表达式。另外,为了方便空值处理,PostgreSQL还提供了两个缩写形式的CASE表达式(函数):NU 阅读全文
posted @ 2023-07-17 06:27 晓枫的春天 阅读(1722) 评论(0) 推荐(0) 编辑
摘要:在关系型数据库中,通常将不同的实体和它们之间的联系存储到多个表中。比如员工的个人信息存储在employees表中,而与部门相关的信息存储在departments表中,同时employees表中存在一个外键字段(department_id),引用了departments表的主键(department_ 阅读全文
posted @ 2023-07-16 08:31 晓枫的春天 阅读(1005) 评论(0) 推荐(0) 编辑
摘要:PostgreSQL除了支持基本的GROUP BY分组操作之外,还支持3种高级的分组选项:GROUPING SETS、ROLLUP以及CUBE。 GROUPING SETS选项 GROUPING SETS是GROUP BY的扩展选项,用于指定自定义的分组集。举例来说,以下是一个销售数据表: CREA 阅读全文
posted @ 2023-07-15 15:40 晓枫的春天 阅读(862) 评论(0) 推荐(0) 编辑
摘要:聚合函数 聚合函数(aggregate function)针对一组数据行进行运算,并且返回单个结果。PostgreSQL支持以下常见的聚合函数: AVG-计算一组值的平均值。 COUNT-统计一组值的数量。 MAX-计算一组值的最大值。 MIN-计算一组值的最小值。 SUM-计算一组值的和值。 ST 阅读全文
posted @ 2023-07-14 11:36 晓枫的春天 阅读(2352) 评论(0) 推荐(0) 编辑
摘要:查询语句的结果可能包含成百上千行数据,但是前端显示时也许只需要其中的小部分,例如TOP-N排行榜;或者为了便于查看,每次只显示一定数量的结果,例如分页功能。为了处理这类应用,SQL提供了标准的FETCH和OFFSET子句。另外,PostgreSQL还实现了扩展的LIMIT语法。 Top-N查询 这类 阅读全文
posted @ 2023-07-13 20:17 晓枫的春天 阅读(459) 评论(0) 推荐(0) 编辑
摘要:使用SELECT语句查询表中的数据时,PostgreSQL不确保按照一定的顺序返回结果。如果相要将查询结果按照某些规则进行排序显示,例如按照薪水从高到低,或者按照入职时间的先后进行排序,需要使用ORDER BY子句。 单列排序 单列排序是指按照某个字段或者表达式进行排序,用法如下: SELECT c 阅读全文
posted @ 2023-07-10 09:49 晓枫的春天 阅读(942) 评论(0) 推荐(0) 编辑
摘要:WHERE子句 WHERE子句的语法如下: SELECT column1, column2, ... FROM table WHERE conditions; WHERE子句位于FROM之后,用于指定一个或者多个逻辑条件,用于过滤返回的结果。满足条件的行将会返回,否则将被忽略。PostgreSQL提 阅读全文
posted @ 2023-07-10 09:49 晓枫的春天 阅读(430) 评论(0) 推荐(0) 编辑
摘要:对于数据库中数据的常见操作,可以简称为增删改查(CRUD,Create、Retrieve、Update、Delete)。其中,使用最多,也最复杂的功能当属数据查询。根据SQL标准,查询语句使用SELECT关键字表示。 单表查询 简单查询开始,来看一个示例 select first_name,last 阅读全文
posted @ 2023-07-08 16:39 晓枫的春天 阅读(220) 评论(0) 推荐(0) 编辑
摘要:今天总结下 PostgreSQL 中常用 psql 常用命令以便后续查阅。 角色查看 hrdb=> \du List of roles Role name | Attributes | Member of + + admin | Create role, Create DB, Cannot logi 阅读全文
posted @ 2023-07-07 10:38 晓枫的春天 阅读(59) 评论(0) 推荐(0) 编辑
摘要:卸载原因 刚开始装 postgresSql 未关注版本,看了下官网,版本已经到了15,想体验一下新版本,所以今天卸载一下 卸载步骤 停掉相关进程 [hui@hadoop201 preserve]$ systemctl stop postgresql-12 AUTHENTICATING FOR org 阅读全文
posted @ 2023-07-07 10:37 晓枫的春天 阅读(546) 评论(0) 推荐(0) 编辑
摘要:删除约束 删除约束通常需要知道它的名称,可以通过psql工具的\d table_name命令查看表的约束。 ALTER TABLE table_name DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]; RESTRICT是默认值,如果存在 阅读全文
posted @ 2023-07-05 10:16 晓枫的春天 阅读(142) 评论(0) 推荐(0) 编辑
摘要:修改表 当我们创建好一个表之后,可能会由于业务变更或者其他原因需要修改它的结构。PostgreSQL使ALTER TABLE语句修改表的定义: ALTER TABLE name action; 其中的action表示要执行的操作。常见的修改操作包括: 添加字段 删除字段 添加约束 删除约束 修改字段 阅读全文
posted @ 2023-07-05 10:16 晓枫的春天 阅读(104) 评论(0) 推荐(0) 编辑
摘要:创建表 在PostgreSQL中,使用CREATE TABLE语句创建一个新表: CREATE TABLE table_name ( column_name data_type column_constraint, column_name data_type, ..., table_constrai 阅读全文
posted @ 2023-07-05 10:16 晓枫的春天 阅读(191) 评论(0) 推荐(0) 编辑
摘要:删除数据库 如果确定一个库不需要了,可以使用DROP DATABASE语句删除一个数据库(工作中谨慎删库): DROP DATABASE [ IF EXISTS]name; 如果使用了IF EXISTS,删除一个不存在的数据库时不会产生错误信息。删除数据库会同时删除该数据库中所有的对象,以及文件系统 阅读全文
posted @ 2023-07-02 09:29 晓枫的春天 阅读(163) 评论(0) 推荐(0) 编辑
摘要:基本概念 数据库管理系统(DBMS)是用于管理数据库的软件系统。常见的关系型DBMS有Oracle、MySQL、Microsoft SQL Server、PostgreSQL、Db2等。常见的NoSQLDBMS有Redis、MongoDB、Cassandra、Neo4j等。 数据库系统由实例(Ins 阅读全文
posted @ 2023-06-27 07:29 晓枫的春天 阅读(873) 评论(0) 推荐(0) 编辑
摘要:对象授权 使用新创建的用户(wdh)连接数据库(test) [hui@hadoop201 ~]$ psql -h hadoop201 -p 5432 -U wdh test Password for user wdh: psql (12.13) Type "help" for help. 执行查询表 阅读全文
posted @ 2023-06-26 06:46 晓枫的春天 阅读(292) 评论(0) 推荐(0) 编辑
摘要:PostgreSQL通过角色的概念来控制数据库的访问权限。角色又包含了两种概念,具有登录权限的角色称为用户,包含其他成员(也是角色)的角色称为组(group)。因此,一个角色可以是一个用户,也可以是一个组,或者两者都是。角色可以拥有数据库对象(例如表和函数),并且可以将这些对象上的权限授予其他角色, 阅读全文
posted @ 2023-06-25 07:46 晓枫的春天 阅读(1526) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示