Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Amigos,
Seguinte, dúvida chata, preciso criar uma query em SQL para uma consulta de tabelas e não estou conseguindo, preciso fazer o seguinte:
TABELA_1
CAMPOS: DATA, VALOR
20/03/2010, 1.500,00
22/03/2010, 2.500,00
TABELA_2
CAMPOS: DATA, VALOR
20/03/2010, 5.000,00
21/03/2010, 3.500,00
22/03/2010, 6.000,00
ESTOU FAZENDO A SEGUINTE CONSULTA:
SELECT TABELA_1.DATA, TABELA_1.VALOR, TABELA_2.DATA, TABELA_2.VALOR
FROM TABELA_1 FULL OUTER JOIN TABELA_2 ON TABELA_1.DATA = TABELA_2.DATA
ELE ESTÁ ME RETORNANDO O RESULTADOR ASSIM:
TABELA_1.DATA, TABELA_1.VALOR, TABELA_2.DATA, TABELA_2.VALOR
20/03/2010, 1.500,00, 20/03/2010, 5.000,00
22/03/2010, 2.500,00, 22/03/2010, 6.000,00
NULL, NULL, 21/03/2010, 3.500,00
E O QUE PRECISO É QUE ELE ME RETORNO O VALOR ASSIM:
20/03/2010, 1.500,00, 20/03/2010, 5.000,00
21/03/2010, NULL, 21/03/2010, 3.500,00
22/03/2010, 2.500,00, 22/03/2010, 6.000,00
SERÁ QUE CONSIGO CRIAR UM SQL QUE FAÇA ISSO?
QUE BASICAMENTE É QUANDO A DATA DE UMA DAS TABELAS ELA ASSUMA A DATA DA OUTRA TABELA.
PRECISO QUE FAÇA ISSO OU ALGUMA OUTRA SOLUÇÃO.
OBRIGADO
Pelo que você está querendo sua query parece certa... Se você não que que apareçam valores NULL basta fazer um case como abaixo:
SELECT (case when TABELA_1.DATA is null then TABELA_2.DATA else TABELA_1.DATA END) DATA , TABELA_1.VALOR, TABELA_2.DATA, TABELA_2.VALOR
FROM TABELA_1 FULL OUTER JOIN TABELA_2 ON TABELA_1.DATA = TABELA_2.DATA
>
Amigos,
Seguinte, dúvida chata, preciso criar uma query em SQL para uma consulta de tabelas e não estou conseguindo, preciso fazer o seguinte:
TABELA_1
CAMPOS: DATA, VALOR
20/03/2010, 1.500,00
22/03/2010, 2.500,00
TABELA_2
CAMPOS: DATA, VALOR
20/03/2010, 5.000,00
21/03/2010, 3.500,00
22/03/2010, 6.000,00
ESTOU FAZENDO A SEGUINTE CONSULTA:
SELECT TABELA_1.DATA, TABELA_1.VALOR, TABELA_2.DATA, TABELA_2.VALOR
FROM TABELA_1 FULL OUTER JOIN TABELA_2 ON TABELA_1.DATA = TABELA_2.DATA
ELE ESTÁ ME RETORNANDO O RESULTADOR ASSIM:
TABELA_1.DATA, TABELA_1.VALOR, TABELA_2.DATA, TABELA_2.VALOR
20/03/2010, 1.500,00, 20/03/2010, 5.000,00
22/03/2010, 2.500,00, 22/03/2010, 6.000,00
NULL, NULL, 21/03/2010, 3.500,00
E O QUE PRECISO É QUE ELE ME RETORNO O VALOR ASSIM:
20/03/2010, 1.500,00, 20/03/2010, 5.000,00
21/03/2010, NULL, 21/03/2010, 3.500,00
22/03/2010, 2.500,00, 22/03/2010, 6.000,00
SERÁ QUE CONSIGO CRIAR UM SQL QUE FAÇA ISSO?
QUE BASICAMENTE É QUANDO A DATA DE UMA DAS TABELAS ELA ASSUMA A DATA DA OUTRA TABELA.
PRECISO QUE FAÇA ISSO OU ALGUMA OUTRA SOLUÇÃO.
OBRIGADO