Oracle SQL如何将具有不同数据的行合并为单行

问题描述 投票:0回答:1

我被困住了,我不知道如何进行。

说我有这张桌子:

ID  Condition_1  Condition_2  Condition_3  Condition_4
--  -----------  -----------  -----------  -----------
 1  X                                                  
 1               X                                     
 1                            X                        
 2  X                                                  
 3                            X                        
 3               X                                     
 4                                         X           

我想构造一个查询,每个ID仅返回一行。类似于:

ID  Condition_1  Condition_2  Condition_3  Condition_4
--  -----------  -----------  -----------  -----------
 1  X            X            X                        
 2  X                                                  
 3               X            X                        
 4                                         X           

非常感谢您的帮助。

sql oracle
1个回答
0
投票

如果我理解正确,那么应该这样做:

select id, max(condition_1) as condition_1, max(condition_2) as condition_2, .....
from   your_table
group  by id
order  by id    -- if needed

但是,我怀疑您向我们展示的不是原始数据,而是解决一个更大问题的中间结果(或“就您所能提供的帮助而言”)。如果是这样,您可能会更好地与我们分享整个问题。我们可能会向您展示如何以更少的步骤完成所有操作;您不必以显示为“输入”的形式获取结果,只需进行进一步处理即可获得您想要的结果。

© www.soinside.com 2019 - 2024. All rights reserved.