Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

SQL calcula a frequência do item usando colunas múltiplas / dependentes?


Se você quiser simplesmente atualizar sua tabela com a prioridade, ficaria assim:
update my_table x
   set popularity = ( select count(distinct state) 
                        from my_table
                       where fruit = x.fruit )

Se você deseja selecionar os dados, pode usar uma consulta analítica:
select state, fruit
     , count(distinct state) over ( partition by fruit ) as popularity
  from my_table

Isso fornece o número de estados distintos, por fruta.