在SQL中展开映射到自己的行?
假设我有下表在SQL中展开映射到自己的行?,sql,mapping,expand,Sql,Mapping,Expand,假设我有下表 mytable Name HourlyValue TC1 {0=1.519, 1=1.175, 2=2.471} TC2 {0=1.200, 1=1.000, 2=1.115} 如何展开HourlyValue,使表格变成这样 mytable Name Hour Value TC1 0 1.519 TC1 1 1.175 TC1 2 2.471 TC2 0 1.200 TC2 1
mytable
Name HourlyValue
TC1 {0=1.519, 1=1.175, 2=2.471}
TC2 {0=1.200, 1=1.000, 2=1.115}
如何展开HourlyValue,使表格变成这样
mytable
Name Hour Value
TC1 0 1.519
TC1 1 1.175
TC1 2 2.471
TC2 0 1.200
TC2 1 1.000
TC2 2 1.115
通过使用以下方法解决此问题:
SELECT
Name,
key AS Hour,
value AS Value
FROM mytable
CROSS JOIN UNNEST(HourlyValue) AS r(key, value)
看看