有没有办法在postgres数据库中创建幻影表?

问题描述

我的postgres生产服务器中有一个名为groups的表,它们有一个名为manager_id的列。我想要做的是基于管理器的ID创建模拟的查找表。例如,如果我对表groups有以下行:

|   id   |manager_id| ... |
|   1    |     1    | .
|   2    |     3    | .
|   4    |     1    |
|   5    |     2    |
|   7    |     2    |

我想访问使group-1之类的可信表

|   id   |manager_id| ... |
|   1    |     1    | .
|   4    |     1    | .

group-2

|   id   |manager_id| ... |
|   5    |     2    | .
|   7    |     2    | .

我不确定这是否可行,是的,我知道我可以查询,但是出于问题的目的(以及我的非常具体的需求,我很难找到解决方法),我可以吗?做这样的事情?如果是,我是否可以在不复制数据的情况下做到这一点,只需从原始参考文献中提取参考文献即可?

解决方法

通常:只需使用where子句来过滤您要从中获得结果的管理器:

select *
from groups
where manager_id = 1

您可以向前迈出一步并创建视图:

create view v_groups_1 as
select *
from groups
where manager_id = 1

create view v_groups_2 as
select *
from groups
where manager_id = 2

然后可以像对常规表一样对视图运行查询。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...