amazon-redshift - 将行值复制 N 次 Redshift
问题描述
我有结构为“位置”、“价值”的数据。无论“值”列是什么,我都希望该位置显示为单独的行。
例如: A, 500
是一行,我希望“A”显示为 500 个不同的行。
解决方案
这可以使用数字表和范围连接来完成。
CREATE TEMP TABLE numbers AS
SELECT ROW_NUMBER() OVER() as "number"
FROM stl_scan
LIMIT 10;
CREATE TEMP TABLE data AS
SELECT 'a' value, 3 occurence
UNION ALL
SELECT 'b' value, 6 occurence;
SELECT data.value
,numbers.number instance
FROM data
JOIN numbers
ON data.occurence >= numbers.number
ORDER BY 1,2;
输出
value | instance
-------+----------
a | 1
a | 2
a | 3
b | 1
b | 2
b | 3
b | 4
b | 5
b | 6
推荐阅读
- java - 如何转换列表
表达 诠释Java? - c# - 文档关闭时调用 itext7 end_page 事件
- loops - 复制 EDL 的部分内容,计算持续时间但循环失败
- postgresql - Postgresql 将字符串值解析为整数
- api - 可以通过 API 密钥从前端进行 Google Cloud Text-to-Speech API 身份验证吗?
- powershell - 如何从脚本位置复制包含子文件夹和项目的文件夹?
- spring-boot - 在 Spring Boot 中为 postgresql 自定义更新和删除查询
- python - 如何从图像中提取不同边缘强度的矩形?
- html - 使用 ng-style 向进度条添加动态样式
- android - 如何清除 ChromeCustomTabs 中的 cookie?