相关文章推荐
豁达的圣诞树  ·  PostgreSQL ...·  3 周前    · 
奔跑的创口贴  ·  无需添加引号使PostgreSQL标识符区分 ...·  1 周前    · 
发呆的面包  ·  Excel中条件计数COUNTIF,Powe ...·  9 月前    · 
烦恼的手电筒  ·  TypeScript 对象数组的类型 - ...·  12 月前    · 
闷骚的红薯  ·  有没有办法移除div和SVG之间的空白?-腾 ...·  2 年前    · 
跑龙套的小狗  ·  DataFrame筛选出指定列值的行 - 知乎·  2 年前    · 
面冷心慈的牛腩  ·  这是一个真正的问题吗:警告C4172:返回局 ...·  2 年前    · 
Code  ›  【DB宝71】PostgreSQL图形化界面工具之pgAdmin4开发者社区
select sql排序 postgresql
https://cloud.tencent.com/developer/article/1920990
大气的警车
2 年前
作者头像
小麦苗DBA宝典
0 篇文章

【DB宝71】PostgreSQL图形化界面工具之pgAdmin4

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 小麦苗的DB宝专栏 > 【DB宝71】PostgreSQL图形化界面工具之pgAdmin4

【DB宝71】PostgreSQL图形化界面工具之pgAdmin4

作者头像
小麦苗DBA宝典
发布 于 2021-12-17 19:24:15
2.2K 0
发布 于 2021-12-17 19:24:15
举报

目录

1、简介
2、Windows安装
3、docker安装pgAdmin4
4、汉化pgAdmin4
5、使用pgAdmin4
  5.1、插入数据
  5.2、使用 insert查询工具插入多条数据
  5.3、使用select查询数据
  5.4、使用 update更新数据库
  5.5、使用 delete删除数据
  5.6、排序的问题
    ①、升序排序 - ORDER BY [field] ASC
    ②、降序排序 - ORDER BY [field] DESC
  5.7、分组的问题
  5.8、HAVING 的用法
    ①、name字段值计数大于1的名称。
    ②、显示名称(name)数量小于2的记录。

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

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....columnN SQL注意:在 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) 
 
推荐文章
豁达的圣诞树  ·  PostgreSQL 13.3中如何将多组JSON键值对数组作为查询参数传入?
3 周前
奔跑的创口贴  ·  无需添加引号使PostgreSQL标识符区分大小写:MySQL迁移至PostgreSQL的SQL查询适配求助
1 周前
发呆的面包  ·  Excel中条件计数COUNTIF,Power BI用哪个函数?_类别_数据_月份
9 月前
烦恼的手电筒  ·  TypeScript 对象数组的类型 - 炽橙子 - 博客园
12 月前
闷骚的红薯  ·  有没有办法移除div和SVG之间的空白?-腾讯云开发者社区-腾讯云
2 年前
跑龙套的小狗  ·  DataFrame筛选出指定列值的行 - 知乎
2 年前
面冷心慈的牛腩  ·  这是一个真正的问题吗:警告C4172:返回局部变量或临时地址-腾讯云开发者社区-腾讯云
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号