[firebase-br] Ajuda em SQL simples

Matheus Mathias matheus.jgs em gmail.com
Sex Fev 8 17:53:42 -03 2013


Pode se colocar 
order by 2
 ou 
order by valor

Pois ali você não tem mais a tabela de vendas no sql principal e sim em um
subselect.
Então ou coloca o aliase ou coloca o numero da coluna.

-----Original Message-----
From: lista [mailto:lista-bounces em firebase.com.br] On Behalf Of Jean Alysson
Sent: sexta-feira, 8 de fevereiro de 2013 17:47
To: FireBase
Subject: Re: [firebase-br] Ajuda em SQL simples

Outro detalhe, queria ordenar pelo campo valor, descendente, mas da erro:

select usu.nome,
(select coalesce(sum(ven.valor),0) as valor
from vendas ven
where usu.id_usuario=ven.ie_usuario
and ven.data = current_date)
from usuarios usu
where usu.departamento='VENDAS'
order by ven.valor desc

ven.valor = coluna desconhecida

já tentei colocar dentro do select interno, mas precisou de um group,
coloquei e deu erro: Cannot use an aggregate function in a GROUP BY
clause

alguma ideia ?

Jean Alysson

Em 8 de fevereiro de 2013 16:38, Jean Alysson <jeanpapa em gmail.com> escreveu:
> Felix: com o LEFT nao funcionou
>
> Matheus: a primeira forma funcionou (usei ela !), a segunda nao funcionou
>
> Resolvido, obrigado a todos:
>
> Jean Alysson
>
> Em 8 de fevereiro de 2013 16:25, Matheus Mathias
> <matheus.jgs em gmail.com> escreveu:
>> Tem duas formas de fazer essa situação. Ai pode melhorar os sql com o
>> coalesce em caso de nulo.
>> Forma 1:
>> select usu.nome, (select sum(ven.valor) from vendas ven
>>                         where usu.id_usuario=ven.ie_usuario
>>                         and ven.data = current_date)
>> from usuarios usu;
>>
>> Forma 2(Não tenho 100% de ctza se essa funciona.)
>> select usu.nome, sum(ven.valor)
>> from usuarios usu
>> right join vendas ven on (ven.ie_usuario= usu.id_usuario)
>> where ven.data = current_date
>> group by usu.nome;
>>
>>
>> -----Original Message-----
>> From: lista [mailto:lista-bounces em firebase.com.br] On Behalf Of Jean
Alysson
>> Sent: sexta-feira, 8 de fevereiro de 2013 17:19
>> To: FireBase
>> Subject: [firebase-br] Ajuda em SQL simples
>>
>> Olá pessoal, como posso resolver este select:
>>
>> tenho uma tabela de usuarios e outra de vendas, quero listar todos os
>> usuarios, mesmo que não tenham venda, ficaria zero, da data atual,
>> estou tentando:
>>
>> select usu.nome, ven.valor
>> from vendas ven
>> right join usuarios usu on (usu.id_usuario=ven.ie_usuario)
>> where ven.data = current_date
>>
>> mas lista somente os que tem venda na tabela de vendas, como posso
resolver
>> ?
>>
>>
>> Obrigado
>> Jean Alysson Ambrosio
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
> --
> Atenciosamente
> Jean Alysson Ambrosio



-- 
Atenciosamente
Jean Alysson Ambrosio

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista