PostgreSQL图形化界面工具之pgAdmin4

举报
小麦苗DB宝 发表于 2022/07/06 15:40:00 2022/07/06
【摘要】 1、简介开源数据库 PostgreSQL 的图形管理工具常用的有Navicat,除此之外,我们还有PostgreSQL本身自带的pgAdmin4,比较专业。Navicat的界面:pgAdmin4 的界面:pgAdmin4 是开源数据库 PostgreSQL 的图形管理工具,是桌面版图形管理工具pgAdmin3 的重写,遵循 PostgreSQL协议 是开源、免费、可商用的。pgAdmin4...

1、简介

开源数据库 PostgreSQL 的图形管理工具常用的有Navicat,除此之外,我们还有PostgreSQL本身自带的pgAdmin4,比较专业。

Navicat的界面:

image-20210528171504054

pgAdmin4 的界面:

image-20210528171522113

pgAdmin4 是开源数据库 PostgreSQL 的图形管理工具,是桌面版图形管理工具pgAdmin3 的重写,遵循 PostgreSQL协议 是开源、免费、可商用的。pgAdmin4 是python开发的web应用程序,既可以部署为web模式通过浏览器访问,也可以部署为桌面模式独立运行。

下载:https://www.pgadmin.org/download/

2、Windows安装

下载:https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v5.1/windows/pgadmin4-5.1-x64.exe

安装就是下一步下一步即可。

另外,如果我们安装了Windows版本的PostgreSQL数据库,那么默认在安装目录下也自带了pgAdmin4工具:

​ 安装过程中也可以选择:img

3、docker安装pgAdmin4

如果我们不想在本地安装,那么也可以直接使用服务器docker版本的pgAdmin4。

官网:https://hub.docker.com/r/dpage/pgadmin4/

详细配置:https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html

-- 下载
docker pull dpage/pgadmin4:latest

-- 安装
docker run -p 680:80  \
    -e 'PGADMIN_DEFAULT_EMAIL=lhr@dba.com' \
    -e 'PGADMIN_DEFAULT_PASSWORD=lhr' \
    -d dpage/pgadmin4
    

-- 登录
http://192.168.66.35:680

可以看到,网页版的pgAdmin4和桌面版的功能是一样的。

4、汉化pgAdmin4

麦老师这里用的最新版本:

5、使用pgAdmin4

5.1、插入数据

或是:

这种方法也是可以的,不过之前要先确定表!!

查看添加的数据;

5.2、使用 insert查询工具插入多条数据

INSERT INTO STUDENT2(  ID,NAME,SUBJECTS)  
VALUES (2,'往','c'),(3,'开','m'), (4,'天','x');

查看数据:

5.3、使用select查询数据

使用查询语句进行查询表

SELECT id,name FROM STUDENT2;

5.4、使用 update更新数据库

把值放在“”的地方 并完成WHERE条件<condition>,然后点击“执行”按钮执行查询。

例如,把id是2的,改变名字和subjects:

查询改变的结果:

5.5、使用 delete删除数据

将整个表都删除的语句:

DELETE FROM public.student2;

5.6、排序的问题

PostgreSQL ORDER BY子句用于按升序或降序对数据进行排序。数据在一列或多列的基础上进行排序。语法:SELECT column-list FROM table_name [WHERE condition] [ORDER BY column1, column2, .. columnN] [ASC | DESC];SQL参数说明:column_list:它指定要检索的列或计算。table_name:它指定要从中检索记录的表。FROM子句中必须至少有一个表。WHERE conditions:可选。 它规定必须满足条件才能检索记录。ASC:也是可选的。它通过表达式按升序排序结果集(默认,如果没有修饰符是提供者)。DESC:也是可选的。 它通过表达式按顺序对结果集进行排序。

①、升序排序 - ORDER BY [field] ASC

执行以下查询以按升序ORDER BY AGE数据记录:

SELECT *   
FROM STUDENT2  
ORDER BY NAME ASC;

按照 name 字段升序排序:

②、降序排序 - ORDER BY [field] DESC

执行以下查询以按降序ORDER BY name DESC数据的记录:

SELECT *   
FROM STUDENT2 
ORDER BY subjects DESC;

按照 subjects 字段降序排序,

③、多列排序 ORDER BY

您还可以使用ORDER BY子句在多列上排序记录。执行以下查询从表“student2”按ORDER BY NAME以升序获取记录。

5.7、分组的问题

PostgreSQL GROUP BY子句用于将具有相同数据的表中的这些行分组在一起。 它与SELECT语句一起使用。GROUP BY子句通过多个记录收集数据,并将结果分组到一个或多个列。 它也用于减少输出中的冗余。语法:SELECT column-listFROM table_nameWHERE [conditions ]GROUP BY column1, column2....columnNORDER BY column1, column2....columnNSQL注意:在GROUP BY多个列的情况下,您使用的任何列进行分组时,要确保这些列应在列表中可用。

SELECT NAME
FROM STUDENT2  
GROUP BY NAME;

减少冗余数据

我们可以先添加一些重复的数据在表里面,当我们使用GROUP BY NAME时,可以看到重复的名字数据记录被合并。 它指定GROUP BY减少冗余。

5.8、HAVING 的用法

在PostgreSQL中,HAVING子句与GROUP BY子句组合使用,用于选择函数结果满足某些条件的特定行。语法:SELECT column1, column2 FROM table1, table2 WHERE [ conditions ] GROUP BY column1, column2 HAVING [ conditions ] ORDER BY column1, column2

①、name字段值计数大于1的名称。

SELECT NAME,COUNT (NAME) 
FROM STUDENT2  
GROUP BY NAME HAVING COUNT (NAME) > 1;

因为往,开,天都是插入的双重数据;

②、显示名称(name)数量小于2的记录。

SELECT NAME   
FROM STUDENT2  
GROUP BY NAME HAVING COUNT (NAME) < 2;

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。