Ir para conteúdo

POWERED BY:

Arquivado

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

LeonardoBM

junção de duas tabelas ( join e/ou union)

Recommended Posts

Boa tarde pessoal,

 

Estou uma duvida na consulta do banco de dados, é o seguinte:

 

Tenho duas tabelas:

- primeira tem informações do nome do produto e a outra o código

-segunda tem informações de 5 produtos (1coluna para cada) e 5 quantidades (1coluna para cada)

 

Agora é o seguinte, preciso o retorno da consulta seja à Somatória da quantidade(podendo estar em qualquer uma das colunas da quantidade, lembrando que prod_1 = qtd_1, prod_2 = qtd_2 ... ) de cada produto (todos em uma coluna), o produto, e o código

 

PRIMEIRA TABELA

NOME                                               CODIGO
-------------------------------------------------- --------------------------------------------------
3                                                  1356 : RAÇÃO CRESCIMENTO 1
ABATE 01/02/2013                                   1357 : RAÇÃO ABATE
ABATE 03/03/2013                                   1357 : RAÇÃO ABATE
ABATE 03/05/2013                                   1357 : RAÇÃO ABATE
ABATE 04/05/2013                                   1357 : RAÇÃO ABATE
ABATE 06/05/2013                                   1356 : RAÇÃO CRESCIMENTO 1
ABATE 06/05/2013                                   1357 : RAÇÃO ABATE
ABATE 09/05/2013                                   1357 : RAÇÃO ABATE
ABATE 14/03/2013                                   1357 : RAÇÃO ABATE
ABATE 15/04/2013 COMPLETA                          1357 : RAÇÃO ABATE
ABATE RETORNO 27/03/13                             1357 : RAÇÃO ABATE
ABATE VACCINAR 14/06/2013                          1357 : RAÇÃO ABATE
CRESCIMENTO 01/02/2013                             1356 : RAÇÃO CRESCIMENTO 1
CRESCIMENTO 31/04/2013 FARELADA                    1356 : RAÇÃO CRESCIMENTO 1
CRESCIMENTO VACCINAR 14/06/2013                    1356 : RAÇÃO CRESCIMENTO 1
INICIAL 01/02/2013                                 1353 : RAÇÃO INICIAL
INICIAL 03/03/2013                                 1353 : RAÇÃO INICIAL
PRE INICIAL 14/03/2013                             1350 : RAÇÃO PRE INICIAL
PRE INICIAL 16/02/2013                             1350 : RAÇÃO PRE INICIAL

 

SEGUNDA TABELA

qtd_1                  qtd_2                  qtd_3                  qtd_4                  qtd_5                  prod_1                         prod_2                         prod_3                         prod_4                         prod_5
---------------------- ---------------------- ---------------------- ---------------------- ---------------------- ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------

0                      3731,5                 0                      3729                   0                                                     ABATE VACCINAR 14/06/2013                                     ABATE VACCINAR 14/06/2013      
0                      9692,5                 0                      9566                   0                                                     CRESCIMENTO 01/02/2013                                        CRESCIMENTO 01/02/2013         
0                      5511,5                 5019                   0                      0                                                     CRESCIMENTO 01/02/2013         CRESCIMENTO 01/02/2013                                        
0                      2563,5                 3028                   3031,5                 0                                                     CRESCIMENTO 01/02/2013         CRESCIMENTO 01/02/2013         CRESCIMENTO 01/02/2013         
0                      7236                   0                      7227,5                 0                                                     CRESCIMENTO 03/03/2013                                        CRESCIMENTO 03/03/2013         
0                      3000                   3007                   3152                   0                                                     CRESCIMENTO 14/02/2013         CRESCIMENTO 14/02/2013         CRESCIMENTO 14/02/2013         
0                      5953,5                 0                      5986                   0                                                     CRESCIMENTO 14/03/2013                                        CRESCIMENTO 14/03/2013         
0                      5221                   6714,5                 6654                   6652,5                                                CRESCIMENTO 14/03/2013         CRESCIMENTO 14/03/2013         CRESCIMENTO 14/03/2013         CRESCIMENTO 14/03/2013

0                      3202                   0                      3177,5                 0                                                     CRESCIMENTO 27/02/2013                                        CRESCIMENTO 27/02/2013         

41203,5                41966,5                41707,5                41615                  40280                  ABATE 01/02/2013               ABATE 01/02/2013               ABATE 01/02/2013               ABATE 01/02/2013               ABATE 01/02/2013
2298,5                 0                      0                      0                      0                      ABATE 03/03/2013                                                                                                            
6370,5                 0                      6374                   0                      6357                   ABATE 03/03/2013                                              ABATE 03/03/2013                                              ABATE 03/03/2013
3488,5                 0                      2980                   3491                   3490,5                 ABATE 03/03/2013                                              ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013
2979                   2994,5                 3014,5                 3093,5                 0                      ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013               
13370,5                14066,5                14140                  13442,5                14104,5                ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013               ABATE 03/03/2013
2083                   2995                   3007                   3000                   2102,5                 ABATE 03/03/2013               CRESCIMENTO 03/03/2013         CRESCIMENTO 03/03/2013         CRESCIMENTO 03/03/2013         ABATE 03/03/2013
2351                   0                      0                      2981,5                 0                      ABATE 03/05/2013                                                                             ABATE 03/05/2013               
2237                   0                      2228                   2239                   0                      ABATE 03/05/2013                                              ABATE 03/05/2013               ABATE 03/05/2013               
2550                   0                      2921,5                 0                      0                      ABATE 26/03/2013                                              ABATE 26/03/2013                                              
60993                  60935,5                61215                  60892                  61067,5                ABATE 26/03/2013               ABATE 26/03/2013               ABATE 26/03/2013               ABATE 26/03/2013               ABATE 26/03/2013
3208,5                 3303,5                 3476,5                 3282,5                 3191                   ABATE 26/03/2013               ABATE 26/03/2013               CRESCIMENTO 26/03/2013         ABATE 26/03/2013               ABATE 26/03/2013
3478,5                 3419,5                 3427                   3431,5                 3477                   ABATE 26/03/2013               CRESCIMENTO 26/03/2013         CRESCIMENTO 26/03/2013         CRESCIMENTO 26/03/2013         ABATE 26/03/2013
2476,5                 2509,5                 0                      2486                   0                      ABATE 27/02/2013               ABATE 27/02/2013                                              ABATE 27/02/2013               

 

 

 

 

O RESULTA PRECISA SER ASSIM:

PRODUTO	                                  CODIGO	                                                         QTD
ABATE 23/05/2013 LIS+MET	           1357 : RAÇÃO ABATE	                                 1280,58
ABATE 24/04/2013 COMPLETA	    1357 : RAÇÃO ABATE	                          58000,85
ABATE 24/05/2013	                              1357 : RAÇÃO ABATE	                       97826,5
CRESCIMENTO 24/04/2013 COMPLET	1356 : RAÇÃO CRESCIMENTO 1	          2993,5

 

 

 

Já tentei de tudo... (Join's, Union, ........)

 

 

Obs: Peguei só um trecho das tabelas.

 

Ajuda ai pessoal!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

1) Tente com UNPIVOT, as colunas viram linhas e permitiria a soma.

 

2) Pense em normalizar esta tabela

 

==============================================================

 

http://www.robersonferreira.com.br/operador_unpivot/

 

http://www.devmedia.com.br/utilizando-os-operadores-pivot-e-unpivot-no-sql-server/27339

 

http://technet.microsoft.com/pt-br/library/ms177410%28v=sql.105%29.aspx

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.