[firebase-br] Como usar FIRST + DISTINCT

André Geraldo dos Santos andresantos em i2.com.br
Ter Ago 14 16:07:42 -03 2007


Cleidson,
 
     Se vc usar o firebird 2 então o exemplo abaixo serve de exemplo:
            SELECT
                   DISTINCT
                   P.CODPRODUTO,
                   P.DESCRICAO
            FROM
                   PRODUTO AS P
            GROUP BY
                   P.CODPRODUTO,
                   P.DESCRICAO,
                   P.CODCATEGORIA
            ORDER BY
                 P.CODPRODUTO ROWS 10

     Fiz o teste aqui e funciona corretamente, o outro post realmente 
estava errado desculpe-me.

Atenciosamente,

   André Geraldo dos Santos


Cleidson Developer escreveu:
> Andre,
>
> A instrução está errada, quando tento executar o comando:
>
> select first 100 p.cliente_id, p.total_pecas, p.data_pedido from pedidos P
> group by p.cliente_id
>
> gera o seguinte erro:
>
> Invalid expression in the select list (not contained in either an 
> aggregate function or the GROUP BY clause).
>
>
> E se eu uso SELECT DISTINCT FIRST 10... da erro tambem, como se o 10 
> fosse uma instrucao desconhecida.
>
>
>
>
> André Geraldo dos Santos escreveu:
>   
>> Cleidson,
>>
>>    Use Group by ou Distinct
>>  
>>    Ficaria assim:
>>
>>    select Distinct first 100 cliente, pedido_id, totalitens from pedidos order by 
>>    totalitens desc  
>>
>>       ou   
>>
>>    select first 100 cliente, pedido_id, totalitens from pedidos group by cliente, pedido_id, totalitens
>>    order by 
>>    totalitens desc
>>
>>    
>> Cleidson Developer escreveu:
>>     
>>> Ola pessoal,
>>>
>>> Preciso fazer uma consulta que me retorne as 100 maiores vendas em 
>>> numero de itens, mas tem que ser distintas, ou seja, de clientes diferentes.
>>>
>>> A tabela de pedidos tem os campos:
>>>
>>> CLIENTE, PEDIDO_ID, TOTALITENS
>>>
>>> Fiz uma consulta mais ou menos assim:
>>>
>>> select first 100 cliente, pedido_id, totalitens from pedidos order by 
>>> totalitens desc
>>>
>>> Funciona, mas o mesmo cliente aparece varias vezes nessa consulta em 
>>> pedidos diferentes.
>>>
>>> Como eu faço para o cliente nao se repita ?
>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>
>>>   
>>>       
>> Atenciosamente,
>>    André Geraldo dos Santos
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>     
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>   




Mais detalhes sobre a lista de discussão lista