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

SQL-Elementhäufigkeit mit mehreren / abhängigen Spalten berechnen?

Wenn Sie Ihre Tabelle einfach mit der Priorität aktualisieren möchten, würde sie folgendermaßen aussehen:

update my_table x
   set popularity = ( select count(distinct state) 
                        from my_table
                       where fruit = x.fruit )

Wenn Sie die Daten auswählen möchten, können Sie eine analytische Abfrage verwenden:

select state, fruit
     , count(distinct state) over ( partition by fruit ) as popularity
  from my_table

Dies liefert die Anzahl unterschiedlicher Zustände pro Frucht.