PGsql根据字符串查全库
时间: 2023-12-04 21:02:23 浏览: 79
在数据库中搜索字符串
要根据字符串查找整个 PostgreSQL 数据库中的表,可以使用以下查询语句:
```
SELECT
table_schema,
table_name,
column_name
FROM
information_schema.columns
WHERE
table_catalog = 'your_database_name' AND
data_type = 'character varying' AND
character_maximum_length IS NOT NULL AND
column_name NOT IN ('password', 'passwd', 'secret')
AND lower(column_name) LIKE '%your_search_string%';
```
这个查询语句使用了 `information_schema.columns` 视图来获取所有列的信息,然后根据指定的条件筛选出符合要求的列,最后返回表名、列名和列所在的模式名(schema)。
需要注意的是,这个查询语句只会查找字符类型的列,且不会查找包含敏感信息(如密码、秘密等)的列。同时,如果你确定要搜索的字符串是小写的,可以将 `lower(column_name)` 改为 `column_name`,这样可以提高查询效率。
阅读全文