Postgresql从小白到高手 九 : psql高级查询及内部视图使用

Postgresql从小白到高手 九:pgsql 复杂查询及内部表高级查询


文章目录

  • Postgresql从小白到高手 九:pgsql 复杂查询及内部表高级查询
  • 一、多表查询
  • 二、pgsql内部表
    • 1.内部表
    • 2.内部表查询应用


一、多表查询

内联 :inner join ··· on 简写 join ··· on
结果集只有符合 筛选条件的才展现。

外联
left outer join ···· on 简写 – left join ·· on
这个查询是一个左外连接, 因为在连接操作符左部的表中的行在输出中至少要出现一次, 而在右部的表的行只有在能找到匹配的左部表行时才被输出。 如果输出的左部表的行没有对应匹配的右部表的行,那么右部表行的列将填充空值(null)。
左联
左联查询-

右联接
right join ··· on
与左连接相对应,右表展现,左表符合条件展现,无符合数据列展现为null
在这里右描述
在这里插入图片描述

全外连接
full outer join ··· on
同时在查询结果上做左连接和右连接,不满足条件时,值为null 。

在这里插入图片描述

在这里插入图片描述

自连接
select * from test1 t1 join test1 t2 on t1.code = t2.code
自连接在处理 字段细节分析很有效果 。

union all
将结果集合并,不会删除重复行,但要求左右结果集有相同列

二、pgsql内部表

1.内部表

内部表
两个页:
information_schema:
表信息:
information_schema.tables ,相当于Oracle中的all_tables
字段信息:
information_schema.columns,相当于Oracle中的all_tab_cloumns
约束信息:
information_schema.table_constraints
权限信息:
table_privileges中记录了表权限,column_privileges中记录了列上的权限,routine_privileges上记录了function/procedure的权限,role_usage_grants记录了sequence/domain等类型的对象的usage权限,跟usage_privileges类似
视图信息:
Views中记录视图基础信息,view_table_usage记录视图所依赖的表,view_routine_usage记录所依赖的function, view_column_usage记录所涉及的字段
查视图:
select * from information_schema.views
查表列信息:
SELECT
*
FROM
information_schema.columns
WHERE
table_name = ‘employee’
ORDER BY
ordinal_position;

查函数:
select * from information_schema.routines where routine_type = ‘FUNCTION’;
查触发器:
select * from information_schema.triggers;

pg_catalog
查询索引:
select * from pg_catalog.pg_indexes;
查视图:
select * from pg_catalog.pg_views;

表名字用途
pg_aggregate聚集函数
pg_am索引访问方法
pg_amop访问方法操作符
pg_amproc访问方法支持过程
pg_attrdef字段缺省值
pg_attribute表的列(也称为”属性”或”字段”)
pg_authid认证标识符(角色)
pg_auth_members认证标识符成员关系
pg_autovacuum每个关系一个的自动清理配置参数
pg_cast转换(数据类型转换)
pg_class表、索引、序列、视图(“关系”)
pg_constraint检查约束、唯一约束、主键约束、外键约束
pg_conversion编码转换信息
pg_database本集群内的数据库
pg_depend数据库对象之间的依赖性
pg_description数据库对象的描述或注释
pg_index附加的索引信息
pg_inherits表继承层次
pg_language用于写函数的语言
pg_largeobject大对象
pg_listener异步通知
pg_namespace模式
pg_opclass索引访问方法操作符类
pg_operator操作符
pg_pltemplate过程语言使用的模板数据
pg_proc函数和过程
pg_rewrite查询重写规则
pg_shdepend在共享对象上的依赖性
pg_shdescription共享对象上的注释
pg_statistic优化器统计
pg_tablespace这个数据库集群里面的表空间
pg_trigger触发器
pg_type数据类型

2.内部表查询应用

查锁表
SELECT
locktype,
database,
relation::regclass,
mode,
granted
FROM
pg_locks
WHERE
relation IS NOT NULL
AND mode != ‘AccessShareLock’
AND NOT granted;

查询字段在存过中的使用:
select n.nspname as “Schema”,p.proname from pg_proc p
LEFT JOIN pg_namespace n ON n.oid = p.pronamespace
where upper(prosrc) like upper(‘%account_period%’) – 表字段名称
–and n.nspname = ‘public’
and p.proname not in (‘account_period’);

查询库中字段在各个表的信息:
SELECT
table_schema || ‘.’ || table_name AS “table”,
column_name,
data_type,
is_nullable,
column_default,character_maximum_length
FROM
information_schema.columns
where column_name in (‘classcode’,‘policyno’) and table_schema =‘public’
and character_maximum_length not in (‘200’,‘15’)
ORDER BY
table_schema,
table_name,
ordinal_position;

查询表占用空间:
SELECT nspname || ‘.’ || relname AS “relation”,
pg_size_pretty(pg_total_relation_size(C.oid)) AS “total_size”
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN (‘pg_catalog’, ‘information_schema’)
AND C.relkind <> ‘i’
AND nspname !~ ‘^pg_toast’
ORDER BY pg_total_relation_size(C.oid) DESC
LIMIT 5;

查数据库占用空间:
SELECT
pg_database.datname AS “database_name”,
pg_size_pretty(pg_database_size (pg_database.datname)) AS size_in_mb
FROM
pg_database
ORDER BY
size_in_mb DESC;

清理表空间:
VACUUM (VERBOSE, FULL, FREEZE);
VACUUM (VERBOSE, FULL, FREEZE, TABLE_NAME);

pg_repack 扩展包需安装
pg_repack-- 打包整理表空间 – pg_repack table_name;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/750139.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视觉震撼背后:带宽对渲染农场的重要性

在这个注重视觉体验的时代&#xff0c;无论是电影、电子游戏还是虚拟现实&#xff08;VR&#xff09;&#xff0c;令人印象深刻的视觉效果都依赖于渲染农场的强大能力。而带宽&#xff0c;则是确保这些画面能够迅速且以高清晰度传递给我们的核心要素。 一、核心概念&#xff1a…

HexPlane代码复现(十几分钟就复现成功的一篇论文代码!!!!!)

https://caoang327.github.io/HexPlane/ 一、 python setup.py develop命令用不了了 running develop /home/uriky/anaconda3/envs/hexplane/lib/python3.8/site-packages/setuptools/command/easy_install.py:144: EasyInstallDeprecationWarning: easy_install command is d…

监控员工电脑的软件有哪些?6款企业必备的电脑监控软件

监控员工电脑的软件在企业管理和网络安全领域扮演着重要角色&#xff0c;它们可以帮助企业提高工作效率&#xff0c;确保数据安全&#xff0c;以及合规性。以下是六款知名的员工电脑监控软件&#xff1a; 1.安企神 - 一个全面的企业级电脑监控和管理解决方案。 2.Work Examine…

智能猫砂盆到底是不是智商税?解救上班族双手的测评合集来了

不得不说&#xff0c;像我这样的上班族真的是很需要一个智能猫砂盆了。普通的猫砂盆一天就要打扫3次&#xff0c;遇到很能拉的猫咪的时候&#xff0c;就不止是三次那么简单了。如果有个产品能帮我解决这个问题&#xff0c;让我能放心外出&#xff0c;那又何乐而不为呢&#xff…

Win32消息机制原理及消息运转

一.消息机制原理 1.消息类型&#xff1a; WIndows定义的一系列WM_XXX开头的&#xff0c;用来表示键盘按键&#xff0c;鼠标点击&#xff0c;窗口变化&#xff0c;用户自定义等各种消息; 2.消息队列&#xff1a; Windows为每一个正在运行的程序维护一个消息队列应用程序的消…

【光伏开发】工商业光伏的优势

随着全球对可再生能源的日益重视和环保意识的增强&#xff0c;工商业光伏作为一种清洁、高效的能源利用方式&#xff0c;正在得到广泛的推广和应用。工商业光伏系统通过安装在工厂、仓库、办公楼等工商业场所的太阳能电池板&#xff0c;将太阳能转化为电能&#xff0c;以满足工…

【Java Web】Element-plus组件库

目录 一、Element-plus组件库概述 二、Element-plus组件库基本用法 一、Element-plus组件库概述 Element-plus组件库是由饿了么团队基于Vue3框架编写的前端UI设计组件库。通俗点讲就是将用户页面设计所需的按钮、表格、导航栏等前端代码编写生成的组件元素都封装好了、用户在进…

java中的Collections工具类

Collections类是java中提供的一个工具类&#xff0c;它和接口Collection乍一看非常相像&#xff0c;但是二者的区别是非常大的&#xff0c;最明显的就是它们一个是类&#xff0c;而另一个是接口了。Collections工具类的作用是对Set 、Map、 List这些容器提供辅助方法来对容器中…

AI时代的风口,中小企业也不能错过

文&#xff5c;白 鸽 编&#xff5c;周效敬 这些场景&#xff0c;对你来说或许并不陌生&#xff1a; 在医院的大屏上&#xff0c;一个医生模样的数字人在做医疗知识科普&#xff1b;在抖音的直播间里&#xff0c;一个真人模样的数字人在线上直播带货&#xff0c;24小时无休无…

SQLite、MySQL、PostgreSQL 3个关系数据库之间优缺点对比

引言 关系数据模型以行和列的表格形式组织数据&#xff0c;在数据库管理工具中占主导地位。今天还有其他数据模型&#xff0c;包括NoSQL和NewSQL&#xff0c;但是关系数据库管理系统&#xff08;RDBMS&#xff09;仍然占主导地位用于存储和管理全球数据。 本文比较了三种实现最…

【金融研究】6月,对冲基金狂卖美国科技股 短期乐观,长期悲观?“油价最大空头”花旗:明年跌到60

科技股新高的背后&#xff0c;是对冲基金与散户投资者的分歧&#xff0c;对冲基金正在向散户投资者出售创纪录数量的科技/半导体/美股“七姐妹”股票。 对冲基金狂卖美国科技股 在五大明星科技股&#xff08;苹果、亚马逊、微软、英伟达、谷歌&#xff09;轮番创下历史新高的…

CSS基础学习记录(6)

目录 1、从最基本的页面开始 2、添加图像/浮层部分 3、位置调整 4、添加动效 4.1、添加浮层动效 4.2、添加背景动画 根据前面css的学习&#xff0c;本篇来实践下前面学习的知识&#xff0c;主要实现如下这样的效果。 下面我们一步步实现上面的效果。 1、从最基本的页面开…

uniapp开发H5、手机APP、微信小程序 可拖动菜单按钮

ml-fab 插件地址&#xff1a;https://ext.dcloud.net.cn/plugin?id18909 1、可拖拽悬浮按钮 ml-fab&#xff0c;支持自定义插槽&#xff0c;点击可展开一个图标按钮菜单&#xff0c;可随意拖拽。 2、支持自定义插槽&#xff0c;可实现自定义配置。 3、操作简单易上手。 ml-f…

锐捷AP从其它项目拆下,怎么也加入不了到现在这个网络里来

环境: AP 产品型号:RG-RAP2260G 问题描述: 锐捷AP从其它项目拆下,怎么也加入不了到现在这个网络里来,现网是WIFI5的,想把2260G用来升级,恢复出厂设置后,插上网线,现网找不到这个AP 解决方案: 1.通电重置AP后,连接AP WiFi进入管理页面,要求先快速配置 2.开始配置…

【计算机网络篇】数据链路层(12)交换机式以太网___以太网交换机

文章目录 &#x1f354;交换式以太网&#x1f6f8;以太网交换机 &#x1f354;交换式以太网 仅使用交换机&#xff08;不使用集线器&#xff09;的以太网就是交换式以太网 &#x1f6f8;以太网交换机 以太网交换机本质上就是一个多接口的网桥&#xff1a; 交换机的每个接口…

1.回溯算法.基础

1.回溯算法 基础知识题目1.组合2.组合-优化3.组合总和|||4.电话号码和字母组合5.组合总和6.组合总和II7.分割回文串8.复原IP地址 基础知识 回溯法也可以叫做回溯搜索法&#xff0c;它是一种搜索的方式。回溯是递归的副产品&#xff0c;只要有递归就会有回溯 因为回溯的本质是穷…

品牌窜货治理:维护市场秩序与品牌健康的关键

品牌在各个渠道通常都会设定相应的销售规则&#xff0c;其中常见的便是区域保护制度&#xff0c;比如 A 地区的货物只能在 A 地区销售&#xff0c;各区域的产品价格和销售策略均有所不同&#xff0c;因此 A 地区的货物不能流向 B 地区&#xff0c;否则就被称为窜货。 窜货现象不…

以数治税时代来临,企业如何应对?

全电发票是数字经济时代发票的新形态&#xff0c;顺应了数字经济潮流。现如今&#xff0c;国家正全力推动行业数字化进程&#xff0c;预计&#xff0c;2025年将基本实现发票全领域、全环节、全要素电子化&#xff0c;实现税务执法、服务、监管与大数据智能化应用深度融合、高效…

车载信息安全:技术要求,实验方法

目录 1. 技术要求 1.1 硬件安全要求 1.2 通信协议与接口安全要求 1.2.1 对外通信安全 1.2.2 内部通信安全 1.2.3 通信接口安全 1.3 操作系统安全要求 1.3.1 操作系统安全配置 1.3.2 安全调用控制能力 1.3.3 操作系统安全启动 1.3.4 操作系统更新 1.3.5 操作系统隔离…

基于大语言模型的多意图增强搜索

随着人工智能技术的蓬勃发展&#xff0c;大语言模型&#xff08;LLM&#xff09;如Claude等在多个领域展现出了卓越的能力。如何利用这些模型的语义分析能力&#xff0c;优化传统业务系统中的搜索性能是个很好的研究方向。 在传统业务系统中&#xff0c;数据匹配和检索常常面临…