Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie wähle ich eine Zeile basierend auf einem Prioritätswert in einer anderen Zeile aus?

Eine Möglichkeit ist:

select d.id, min(name) keep (dense_rank first order by name_priority) name,
       min(name_priority) name_priority,
       min(color) keep (dense_rank first order by color_priority) color,
       min(color_priority) color_priority
  from yourtab d
 group by id;