首页 > 解决方案 > 如果 SQL Schema 不存在则跳过它

问题描述

我编写了一个 SQL 查询,它结合了从多个模式中提取数据,但是当项目被归档时,模式被删除并且我的查询失败了。我想知道是否有办法修改查询以在架构不存在时跳过它。

这是我的查询示例:

SELECT * from dd12

UNION ALL

SELECT * from xx15                                   

标签: sqlpostgresql

解决方案


您可以使用此查询检查架构是否存在:

SELECT schema_name FROM information_schema.schemata WHERE schema_name = 'name';

替换'name'为您的架构名称。检查答案以获取更多详细信息

对于条件,您可以使用CASE

SQL CASE 表达式是一个通用的条件表达式,类似于其他编程语言中的 if/else 语句。

postgresql 条件文档


推荐阅读