sql - Postgres如何从名称中带有“组”的模式中删除所有表?
问题描述
我有一个 postgres 数据库模式,其中包含我需要删除的几十个表。我基本上需要删除我的模式(abcd)中名称中带有“组”一词的所有表。如果不手动进入并为每个脚本编写放置脚本,我该如何做到这一点?想知道在 postgres sql 中是否有一些简单的方法可以做到这一点?或者也许使用python?
drop table abcd.group%;
解决方案
好吧,这可能不是最酷的方法,但是您可以运行下面的查询,复制并粘贴输出并运行它。
SELECT 'DROP TABLE ' || schemaname || '.' || relname || ';' "statement"
FROM pg_catalog.pg_statio_user_tables
WHERE schemaname = 'abcd' AND relname ILIKE 'group%';
推荐阅读
- php - 如何在 Symfony4 上安装 phpDocumntor?
- google-chrome - Chrome 扩展清单权限 v3
- python - 基于类型参数的返回类型
- xcode - 有没有办法获得有关构建错误来自何处的更多详细信息?
- java - 使用可以更改密钥的 RestTemplate 反序列化 JSON
- python - 为什么我最初为 BST 将 root 设置为 None 时会出错
- r - 如何定位列并将其转换为百分比
- vue.js - 使用
在Vue中标记为第一个孩子 tag in Vue 2 In Vue,js 2, I would like to use this pattern:
<template> <component :is="tagType"> ... </component> </template>
Where tagT
- javascript - 在 Web 应用程序中实现端到端 PKI
- python - 有没有更简单的方法可以从三组数字中找到等差数列?