显示表格行中的替代列

Posted

技术标签:

【中文标题】显示表格行中的替代列【英文标题】:Display the Alternative columns from table row 【发布时间】:2019-10-07 11:02:35 【问题描述】:

enter image description here

【问题讨论】:

样本数据最好显示为formatted text。请参阅here,了解有关如何创建漂亮表格的一些提示。 【参考方案1】:

salary列转换为字符串数据类型(使salaryname具有相同的数据类型)然后UNPIVOT

Oracle 设置

CREATE TABLE test_data ( id, name, salary ) AS
 SELECT 100, 'A', 1000 FROM DUAL UNION ALL
 SELECT 101, 'B', 2000 FROM DUAL UNION ALL
 SELECT 102, 'C', 3000 FROM DUAL

查询

SELECT id, value
FROM   (
  SELECT id, name, TO_CHAR( salary ) AS salary
  FROM   test_data
)
UNPIVOT ( value FOR key IN ( name, salary ) )

输出

身份证 |价值 --: | :---- 100 |一种 100 | 1000 101 |乙 101 | 2000 102 | C 102 | 3000

db小提琴here

【讨论】:

【参考方案2】:

或者,UNION ALL 也可以为您工作,如果您同意更改 Salary 列的数据类型 -

SELECT ID, Name "Name & Salary"
FROM TABLE1
UNION ALL
SELECT ID, Salary
FROM TABLE1
ORDER BY ID, Name

【讨论】:

以上是关于显示表格行中的替代列的主要内容,如果未能解决你的问题,请参考以下文章

删除表格中的重复单元格

如果谷歌电子表格的同一列中的值重复,如何突出显示单元格?

SQLite 替换现有列中的数据

如何从mysql列中存在的所有行中删除重复值[duplicate]

根据同一行中的另一个值从行中选择某个值

Google 电子表格:尝试突出显示 A 列和 C 列中的值重复的所有行时出错