amazon-redshift - Redshift SQL:如何纯粹在 SQL 中创建队列三角形(对角线形式)
问题描述
我有一张包含每月队列数量的表格。它有 3 个字段,分别是群组、月份和 user_count。有了这个表,如果可能的话,我想在 SQL 中创建另一个看起来像这样的表(“队列三角形”):
month 2019-07 2019-08 2019-09 2019-10 2019-11
2019-07 200 186 171 160 151
2019-08 81 73 71 69
2019-09 46 34 23
2019-10 100 90
2019-11 80
在此架构中,字段为“月”、“2019-07”、“2019-08”、“2019-09”、“2019-10”和“2019-11”(标题行)。
这是用于填充测试队列表的 SQL:
create table test (
cohort varchar(7),
"month" varchar(7),
user_count int
);
insert into test values
('2019-07', '2019-07', 200),
('2019-07', '2019-08', 186),
('2019-07', '2019-09', 171),
('2019-07', '2019-10', 160),
('2019-07', '2019-11', 151),
('2019-08', '2019-08', 81),
('2019-08', '2019-09', 73),
('2019-08', '2019-10', 71),
('2019-08', '2019-11', 69),
('2019-09', '2019-09', 46),
('2019-09', '2019-10', 34),
('2019-09', '2019-11', 23),
('2019-10', '2019-10', 100),
('2019-10', '2019-11', 90),
('2019-11', '2019-11', 80);
Redshift 不支持 CROSSTAB(我在 SQL 中检查了 Cohort-style Table (Diagonal Grid)),所以我很难转换为对角线形式。
解决方案
推荐阅读
- javascript - 在 html 源代码中查找元素并在找到时显示警报消息
- .net - Rider 使用 mono32 执行单元测试而不是 mono64 macOS
- javascript - MUI - 如何以命令式/编程方式打开对话框
- javascript - 如何在 Mongoose 模型中使用符号?
- swift - UITextField 下的自定义单行不会以较小的屏幕尺寸停止
- angular - 更改密码后,Angular/Firebase 重定向到登录页面?
- uwp - 如何在日历uwp c#中添加约会/提醒
- java - javassist ; 不见了
- c# - 在循环中的 3 个点之间移动球体游戏对象
- c# - 由于使用 Task,使泛型函数异步在类型转换时失败