我正在尝试在新列中合并hive中的两列,以便一列下的所有行都显示为其他列。
例如,这是我的表格:
+-------------+------------+-------------+-----------+
|maths1 | maths2 | physics1 | physics2 |
+-------------+------------+-------------+-----------+
| 10 | 20 | 30 | 40 |
+----------------------------------------------------+
这就是我想要的:
+-------------+------------+
|maths | physics |
+-------------+------------+
| 10 | 30 |
+--------------------------+
| 20 | 40 |
+--------------------------+
我想要一个查询。
非常感谢任何帮助。
答案 0 :(得分:2)
您想要取消数据。
试试这个:
SELECT maths1 maths, physics1 physics
FROM tableName
UNION ALL
SELECT maths2 maths, physics3 physics
FROM tableName
假设您有另一列student_id
,查询将如下所示:
SELECT student_id, maths1 maths, physics1 physics
FROM tableName
UNION ALL
SELECT student_id, maths2 maths, physics3 physics
FROM tableName