PostgreSQL 如何检索数据库中所有表里,包含FileName字段的表名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostgreSQL 如何检索数据库中所有表里,包含FileName字段的表名相关的知识,希望对你有一定的参考价值。
第一句sql可查出 包含某字段的 表id,但是是多条数据,第二条sql是根据id查询表名的,怎么能连起来
select attrelid,attname from pg_attribute where attname='name';
select * from pg_class where relfilenode = '241276';
试试这个?本回答被提问者采纳
在postgresql中如何从数据库中检索出所有的表名
1、查看当前数据库中所有的模式。
2、如果想查看模式中所有的对象信息,可以通过\\d 模式名.* 加上通配符的方式来进行查看。
3、在查看模式中的对象时一般使用的方式都是模式名.对象名的方式。
4、在postgresql中有一个类型于linux系统中$PATH的环境变量search_path,默认情况下它的值是当前数据库值和公共模式值。
5、如果想其它模式也添加在搜索路径中可通过如下命令来进行设置。
6、设置完成后如果我们再访问tec模式下的对象,就不需要再使用模式名.对象名的方式了,直接使用对象名即可进行操作。
参考技术A具体步骤如下:
1.查找当前数据库中的所有模式。
2.如果要查看模式中的所有对象信息,可以通过\d模式名,还有通配符来查看。
3.查看模式中对象的常用方式是模式名,对象名的方式。
4.在Postgresql中,Linux系统有一个$path类型的环境变量search-path。默认情况下,它的值是当前数据库值和公共模式值。
5.如果要将其他模式添加到搜索路径,可以使用以下命令进行设置。
6.设置之后,如果再在ec模式下访问对象,则不需要使用模式名。对象名,我们可以直接使用对象名进行操作。
参考技术B 1、通过命令行查询\d 数据库 —— 得到所有表的名字
\d 表名 —— 得到表结构
2、通过SQL语句查询
"select * from pg_tables" —— 得到当前db中所有表的信息(这里pg_tables是系统视图)
"select tablename from pg_tables where schemaname='public'" —— 得到所有用户自定义表的名字(这里"tablename"字段是表的名字,"schemaname"是schema的名字。用户自定义的表,如果未经特殊处理,默认都是放在名为public的schema下) 参考技术C 点击确定后大家便可以查看postsql已有的数据库了; 注:pgAdmin3的数据库和查询一个表; 9.1 SELECT; 要从一个表中检索数据就是查询这个表。 SQL 参考技术D 进入数据库,执行SQL:select * from pg_tables 查询该数据库包含的所有表
以上是关于PostgreSQL 如何检索数据库中所有表里,包含FileName字段的表名的主要内容,如果未能解决你的问题,请参考以下文章
如何在 POSTGRESQL 中从两个不同的数据库中检索数据
看大数据最大技术难关之模糊检索,PostgreSQL如何攻克