Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NaPraia

Novo campo na consulta

Recommended Posts

boa tarde,

 

estou com uma consulta do tipo:

 

select país, migra from tabela;

 

e me retorna os seguintes dados:

 

país - migra

FRANÇA - 0

FRANÇA - 0

FRANÇA - 0

FRANÇA - 0

ITALIA - 0

ITALIA - 0

ITALIA - 1

 

no caso, do jeito que retornam os dados eu deveria migrar apenas um registro, do tipo ITALIA, mas tenho que levar todos do tipo ITALIA

 

tem alguma função que posso ajudar nisso, que ficaria como uma nova coluna (exemplo migracao), que fique do jeito

select país, migra, migracao from tabela;

 

país - migra - migracao

FRANÇA - 0 - 0

FRANÇA - 0 - 0

FRANÇA - 0 - 0

FRANÇA - 0 - 0

ITALIA - 0 - 1

ITALIA - 0 - 1

ITALIA - 1 - 1

 

 

Pois como o migra está como 1 para um PAIS, eu teria que migrar todos. já a a FRANCA com não retorna com nenhum 'migra' = 1, não migro nada.

 

Desculpe se não estou me expressando direito

Espero que possam ajudar
Valeu, obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites
select país, migra 
from tabela t1
where exists (select null 
              from tabela t2
              where t2.pais = t1.pais
              and t2.migra = 1)

ou

select país, migra ,
(select max(t2.migra)
              from tabela t2
              where t2.pais = t1.pais)
from tabela t1

ajudou ?

 




			
		

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu, mas eu queria ver se tem como fazer com alguma função pronta do Oracle,

não quero usar subconsulta.



valeu, consegui usando a seguinte função

 

 MAX(salary) KEEP (DENSE_RANK LAST ORDER BY commission_pct)      OVER (PARTITION BY department_id) "Best"  

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza, estas funções analíticas são poderosas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.