我在 Amazon RedShift 中有几个表,它们遵循几个维度列和一对指标名称/值列的模式。
DimensionA DimensionB MetricName MetricValue
---------- ---------- ---------- -----------
dimA1 dimB1 m1 v11
dimA1 dimB2 m1 v12
dimA1 dimB2 m2 v21
dimA2 dimB2 m1 v13
dimA3 dimB1 m2 v22
我正在寻找一种将数据展开/旋转为每个唯一维度集一行的形式的好方法,例如:
DimensionA DimensionB m1 m2
---------- ---------- --- ---
dimA1 dimB1 v11
dimA1 dimB2 v12 v21
dimA2 dimB2 v13
dimA3 dimB1 v22
生成执行这种展开的查询的好模式是什么?
Amazon RedShift 基于 ParAccel 并支持 PostgreSQL 8.0.2 ,它没有crosstab
、或.unnest
pivot
unpivot