[firebase-br] Dados na Horizontal - Ufa
Evandro Bastiani
evandrobastiani2 em hotmail.com
Sex Jul 1 15:00:27 -03 2005
Agradeço muito ao Amigo Eduardo..... depois de persistir sem sucesso no
Bendito TRANSFORM e PIVOT ele me passou direto no meu email um código bem
mastigado e documentado que funcionou perfeitamente.....
Valeu Amigo......
From: Eduardo <eduardo em icontroller.com.br>
Oi Evandro Bastiani
SELECT
CLIENTES.RAZAO,
(SELECT
SUM(QUANTIDADE)
FROM
ITENS
WHERE
CODIGO_CLIENTE=CLIENTES.CODIGO
AND EXTRACT (MONTH FROM ENTRADA) = 1
) AS JANEIRO,
/*
** Repita aqui os selects de fevereiro a novembro ** ** Se
vc rodar do jeito que está, trará de JANEIRO e DEZEMBRO
*/
(SELECT
SUM(QUANTIDADE)
FROM
ITENS
WHERE
CODIGO_CLIENTE=CLIENTES.CODIGO
AND EXTRACT (MONTH FROM ENTRADA) = 12
) AS DEZEMBRO
FROM
CLIENTES
WHERE
EXISTS (
SELECT
FIRST 1 0 AS OK
FROM
ITENS
WHERE
CODIGO_CLIENTE=CLIENTES.CODIGO
AND ENTRADA BETWEEN '01.01.2005' AND
'31.12.2005'
) /* Este where é para o caso da tabela ter lançamentos
em diversos anos
Se não for o caso, retire */
ORDER BY 1
/****************************************************************************
Um índice em CODIGO_CLIENTE, ENTRADA na tabela ITENS ajudará bastante na
performance
Qualquer dúvida, grita !
[]s Eduardo
****************************************************************************/
>Cara.... nun manjo muito fazer subselects..... e a sua dá um erra depois
>que termina a primeira Sub
>Select....
>
>Pode testar e me passar um exemplo ..
>os Campos Envolventes que ´preciso é
>
>Clientes.Razao, (EXTRACT(MONTH FROM Itens.Entrada), Itens.Quantidade
>2 Tabelas (Clientes e Vendas) Tenhu a chave do Clientes na Tabela
>Vendas..
>
>Valeu pela Força.......
_________________________________________________________________
MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com
Mais detalhes sobre a lista de discussão lista