Ir para conteúdo

POWERED BY:

Arquivado

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

sk8sta

Soma de intervalos em um select

Recommended Posts

Ola galera beleza!?

 

Bom estou com um problema em uma consulta sql que estou fazendo aqui:

 

Essa é minha tabela:

+------+-------+-------+
| nome | moeda | total |
+------+-------+-------+
| XXXX |  re   |  30   |
+------+-------+-------+
| XXXX |  eu   |  15   |
+------+-------+-------+
| XXXX |  eu   |  15   |
+------+-------+-------+
| YYYY |  eu   |  50   |
+------+-------+-------+
| YYYY |  re   |  25   |
+------+-------+-------+
| YYYY |  re   |  10   |
+------+-------+-------+

Queria fazer um select que me traga a soma somente das moedas iguais, de acordo com o nome:

 

+------+----------+----------+
| nome | total_eu | total_re |
+------+----------+----------+
| XXXX |	30	|	00	|
+------+----------+----------+
| XXXX |	00	|	30	|
+------+----------+----------+
| YYYY |	50	|	00	|
+------+----------+----------+
| YYYY |	00	|	35	|
+------+----------+----------+

ou então:

 

+------+-------+-------+
| nome | moeda | total |
+------+-------+-------+
| XXXX |   re  |  30   |
+------+-------+-------+
| XXXX |   eu  |  30   |
+------+-------+-------+
| YYYY |   eu  |  50   |
+------+-------+-------+
| YYYY |   re  |  35   |
+------+-------+-------+

Ja tentei de varias formas e ainda não consegui, se alguem ai sou ber fazer isso, ou então quiser dar uma dica, atualmente estou resolvendo esse problema usando dois selects, mas queria fazer dessa meneira se possivel, obrigado a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o segundo eh simples:

 

select nome,moeda,sum(total)total

from tabela

group by nome,moeda

 

o primeiro eh mais chatinha pq envolve sub query:

 

select nome, sum(eu), sum(re) from

(

select nome , if(moeda='eu',total,0)eu , if(moeda='re',total,0)re

from tabela

)abc

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testei esse exemplo

 

select nome,moeda,sum(total)total from tabela group by nome,moeda

 

Não consegui, o outro eu não entendi o que significa esse abc, e também porque no meu caso eutou relacionando uma tabela dentro dessa query e não sei se o sql que esta dentro tem que ter também o inner join

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.