1
A
回答
0
要移动列之间的数据的事实强烈地暗示出底层的数据模型被打破,需要进行标准化。修复数据模型比为系统增加另一层复杂性要合适得多。
话虽这么说,你应该能够做到像
SELECT (CASE WHEN column1 LIKE 'FacilityName%' THEN column1
WHEN column2 LIKE 'FacilityName%' THEN column2
WHEN column3 LIKE 'FacilityName%' THEN column3
WHEN column4 LIKE 'FacilityName%' THEN column4
ELSE null
END) column1,
(CASE WHEN column1 LIKE 'NPI%' THEN column1
WHEN column2 LIKE 'NPI%' THEN column2
WHEN column3 LIKE 'NPI%' THEN column3
WHEN column4 LIKE 'NPI%' THEN column4
ELSE null
END) column2,
(CASE WHEN column1 LIKE 'TIN%' THEN column1
WHEN column2 LIKE 'TIN%' THEN column2
WHEN column3 LIKE 'TIN%' THEN column3
WHEN column4 LIKE 'TIN%' THEN column4
ELSE null
END) column3,
(CASE WHEN column1 LIKE 'Address%' THEN column1
WHEN column2 LIKE 'Address%' THEN column2
WHEN column3 LIKE 'Address%' THEN column3
WHEN column4 LIKE 'Address%' THEN column4
ELSE null
END) column4
FROM(<<your query>>)
2
select col1, col2, col3, col4 from (
select * from (
select
n, str, row_number() over (partition by n order by
decode(substr(str,1,3),'Fac',1,'NPI',2,'TIN',3,'Add',4)) cn
from (
select * from (select t.*, rownum n from t)
unpivot (str for cn in (col1 as 0, col2 as 0, col3 as 0, col4 as 0))
)
)
pivot (min(str) for cn in (1 as col1, 2 as col2, 3 as col3, 4 as col4))
)
order by n
相关问题
- 1. 根据特定行中的值对列重新排序。
- 2. 如何根据值重新排列NSDictionary?
- 3. 根据参考对多索引数据帧列重新排序
- 4. 根据键重新排列阵列
- 5. 根据头部排序重新排列数组元素
- 6. awk |根据列值重新排列CSV文件的字段
- 7. 根据列表值重新排列numpy数组
- 8. 根据给定顺序重新排序链接列表
- 9. 根据严重性排序SharePoint列表
- 10. 根据文本框中重新排列的无序列表获取值
- 11. 根据R中的现有模式对列表中的对象重新排序
- 12. 如何根据排列重新排列序列的组成部分?
- 13. 根据值的数量对TreeMap排序
- 14. 基于序列对行重新排序
- 15. 根据序列号排序
- 16. 根据其行的平均值重新排列矩阵
- 17. 根据值重新排列JSON的一部分
- 18. 根据列重新排列数据帧的列意思是
- 19. Python Pandas - 根据列名重新排列数据框中的列
- 20. 根据ID的相关列表重新排序集合
- 21. 重新排序列
- 22. MySQL:根据值排除列
- 23. 需要重新排列HashMap键/值对
- 24. 根据多个指数和权重对列表进行排序
- 25. 重新排列数据库时重新排序UitableView单元
- 26. 基于排序列和另一列值重新排序表
- 27. 如何根据其内容对Python中的列表重新排序
- 28. 根据其值排序LinkedHashMaps
- 29. PHP按值重新排序阵列
- 30. MySQL根据排序字段值对父/子进行排序
首先,非常感谢你!!!!我完全同意,这是一个可怕的设置,但这不是真正的数据,这些是列标题。这是一个自动化的一步,我试图让所有可能的字段组合,然后使插入查询出来。但你是对的,这是一个混乱,我只是不能想出更好的方式 – lalachka 2013-03-21 19:03:52