- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有几个月度汇总表,我需要在同一个报表中查询所有这些表。我该怎么做呢?以下是我的一些想法,但这些想法行不通。
八月总结
sept_summary
八月摘要
`SELECT name, timestamp FROM aug_summary AND sept_summary AND oct_summary;`
?
`select * from '*_summary'`
?
最佳答案
您有多种选择来处理这个问题。
显而易见的是规范化您的数据库并将所有数据合并到包含“月”列的单个表中,以标识数据所在的月份。
这看起来像是一些手动创建的“分区”方案。因此,您的另一个选择是将其转换为使用 Postgres' built-in partitioning 的表格。
作为快速修复,您可以简单地创建对所有表执行联合的 View ,这样您在数据库中只有一次巨大的 UNION
并且您可以使用简单的 在您的报告中选择 * from summary_table
。
报告作业不需要更改。您只需在创建新的汇总表后更改 View (您也不需要对规范化模型或分区执行此操作)
您可以创建一个循环遍历可用表并返回每个表的内容的函数:
create function get_summary()
returns setof summary201711
as
$$
declare
l_sql text;
l_rec record;
begin
for l_rec in select schemaname, tablename
from pg_tables
where schemaname = 'public'
and tablename like 'summary%' --<< adjust this to match your pattern
loop
l_sql = format('select * from %I.%I', l_rec.schemaname, l_rec.tablename);
return query execute l_sql;
end loop;
end;
$$
language plpgsql;
returns setof summary201711
使用哪个表并不重要,因为它们都必须具有相同的结构。
一旦你有了那个函数,你就可以像这样使用它:
select *
from get_summary();
虽然不确定那会多快。我的猜测是 View (或任何形式的分区)会更快。
关于sql - 在同一个select中查询多个汇总表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48625519/
我的数据库中有 4 个表。 2012,2013,2014,2015. 每一个都是这样布置的: 我想对每年的每个 StartStation 求和: StartStation 2012
您建议使用哪种方法,为什么? 创建汇总表和 . . . 1) 实时更新表格。 2) 每 15 分钟运行一次 group by 查询以更新汇总表。 3) 还有别的吗? 数据必须接近实时,不能等一个小时、
我正在尝试使用来自 python 的 pandas 的 .describe() 创建一个汇总表。 我有以下数据框: df = pd.DataFrame({'Group':['Group1', 'Gro
我在 pandas 中得到了下表: x 是 1 1 2 3 2 5 2 4 1 4 1 5 我想看看变量x的模式,所以我想看看模式是什么。 在表格中,您会看到 x=1 然后 x=2 三次,然后返回
我有一个数据库,其中有许多具有关系的表中的数据 TABLE Cars (stock) --------------------- Model colourid Doors --------
我正在尝试对列表求和,但跳过第一个偶数,然后继续添加列表的其余部分,包括其余的偶数,但我似乎不太正确。 list = [-3, -7, -1, 0, 1, 2, 3, 4, 5, 6, 7] def
我正在开发一个我需要创建和维护的项目 汇总表 出于性能原因。我相信正确的术语是 物化 View . 我有两个主要原因这样做: 非规范化 我尽可能地对表格进行了标准化。所以在某些情况下,我必须加入许多表
我有两个表,表 A 有列 token(主键)和 停机时间(INT),表 B 有列 token, status(ENUM 有 3 种状态:active, unstable, inactive ), du
我正在使用包 purrr 和 broom 来生成一系列 glm 并构建一个包含模型信息的表格,以便我可以比较它们。 当我从 purrr 调用 map 函数时,代码失败。我认为问题与 mutate 和
我是一名优秀的程序员,十分优秀!