【发布时间】:2021-07-07 09:01:49
【问题描述】:
我有一张桌子,上面有人的语言。任何人都可以说英语、西班牙语或英语和西班牙语。在前两种情况下,每个 person_id 有一行,在第二种情况下,我有两行。
我需要在另一个表中使用这些数据,但我只能为每个人保留一个唯一的行。在我的情况下,正确的解决方案是创建两列:
Select
person_id,
case when person_language = 'English' then person_language end as "english_language",
case when person_language = 'Spanish' then person_language end as "spanish_language"
from person_table;
这会将正确的数据放入右列,但英语和西班牙语分别显示在两个单独的行中,在另一个语言列中具有 NULL 值。关于如何解决这个问题的任何想法?
【问题讨论】:
-
这能回答你的问题吗? How to convert Rows to Columns in Oracle?