Ir para conteúdo

POWERED BY:

Arquivado

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

lh.santos

SQL no Interbase usando FIRST UNION e ORDER BY

Recommended Posts

Estou tentando listar 10 produtos mais vendidos junto com os produtos não vendidos. Segue a estrutura das tabelas: VENDA CODIGOVENDA INTEGER NOT NULL DATA DATE NOMECLIENTE VARCHAR(40) TOTAL NUMERIC(15,2) CODIGOCLIENTE INTEGER VENDA_ITENS VALOR DOUBLE PRECISION QUANTIDADE DOUBLE PRECISION ICMVENDA NUMERIC(9,2) CODIGOPRODUTO INTEGER NOT NULL CODIGOVENDA INTEGER NOT NULL PRODUTO CODIGOPRODUTO INTEGER NOT NULL DESCRICAO VARCHAR(50) NOT NULL UNIDADE VARCHAR(2) SALDOFISICO DOUBLE PRECISION PRECOVENDA VALOR ICMVENDA PERCENTAGEM CODIGOTRIBUTARIO VARCHAR(2) CODIGOEXPORTACAO VARCHAR(20) Minha intencao é listar os produtos mais vendidos juntamente com os não vendidos. Abaixo a instrução que funciona perfeitamente: SELECT P.DESCRICAO, SUM(I.QUANTIDADE) AS SOMAQUANTIDADE, SUM(I.VALOR) AS SOMAVALOR FROM VENDA_ITENS I, VENDA V INNER JOIN PRODUTO P ON (P.CODIGOPRODUTO = I.CODIGOPRODUTO) WHERE (I.CODIGOVENDA = V.CODIGOVENDA AND V.DATA BETWEEN '10/01/2004' AND '10/31/2004') GROUP BY P.DESCRICAO UNION ALL SELECT DESCRICAO, 0.000 SOMAQUANTIDADE, 0.000 SOMAVALOR FROM PRODUTO WHERE CODIGOPRODUTO NOT IN (SELECT DISTINCT I.CODIGOPRODUTO FROM VENDA_ITENS I, VENDA V WHERE I.CODIGOVENDA = V.CODIGOVENDA AND V.DATA BETWEEN '10/01/2004' AND '10/31/2004') ORDER BY 2 DESCENDING A partir dai preciso mostrar apenas os 10 itens mais vendidos que estão no primeiro SELECT. Se coloco o FIRST lá em cima ele mostra apenas 10 mas nao necessariamente os mais vendidos. Se coloco um ORDER BY para o SELECT de cima dá erro.. Uso Firebird 1.5.1.4481_________________Luiz Henrique Florianópolis/SC/Brasil

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola amigo,ja tive um problema parecido, pra mostrar os 10 mais vendidos usa o modelo abaixo:SELECT * FROM (SELECT * FROM T_DEVEDORESCREDIT ORDER BY VALORATUAL DESC)WHERE ROWNUM BETWEEN 0 AND 10 ;e coloca o union agora junto e testa,falow

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.