Ajuda com SQL select dentro de select
POR FAVOR PODEM ME AJUDAR COM UM SELECT? TO FAZENDO COM BANCO FIREBIRD, NO IBEXPERT,
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1 FROM receber R WHERE R.rec_tipo = 22 AND R.rec_quitado = "N"
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3 FROM receber R WHERE R.rec_tipo = 23 AND R.rec_quitado = "N"
SERIA MAIS OU MENOS ISSO, MAS ASSIM SAI UM VALOR EM BAIXO DO OUTRO E NAO DETALHA QUAL É BOLETO 1 E QUAL É BOLETO 3, EU PRECISO QUE SAIA ESSES DOIS SELECTS EM DUAS COLUNAS COM OS RESPECTIVOS NOMES
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1 FROM receber R WHERE R.rec_tipo = 22 AND R.rec_quitado = "N"
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3 FROM receber R WHERE R.rec_tipo = 23 AND R.rec_quitado = "N"
SERIA MAIS OU MENOS ISSO, MAS ASSIM SAI UM VALOR EM BAIXO DO OUTRO E NAO DETALHA QUAL É BOLETO 1 E QUAL É BOLETO 3, EU PRECISO QUE SAIA ESSES DOIS SELECTS EM DUAS COLUNAS COM OS RESPECTIVOS NOMES
Gustavo Baracca
Curtidas 0
Melhor post
Ricardo Araujo
11/04/2019
Eu fiz o código ve se ajuda
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1, 'Boleto1' as duplicatas from boletos R
WHERE R.rec_tipo = 22 AND R.rec_quitado = 'N'
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3, 'Boleto3' as duplicatas
from boletos R WHERE R.rec_tipo = 23 AND R.rec_quitado = 'N'
depois manda uma mensagem dizendo se deu certo blz.
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1, 'Boleto1' as duplicatas from boletos R
WHERE R.rec_tipo = 22 AND R.rec_quitado = 'N'
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3, 'Boleto3' as duplicatas
from boletos R WHERE R.rec_tipo = 23 AND R.rec_quitado = 'N'
depois manda uma mensagem dizendo se deu certo blz.
GOSTEI 1
Mais Respostas
Erich
11/04/2019
POR FAVOR PODEM ME AJUDAR COM UM SELECT? TO FAZENDO COM BANCO FIREBIRD, NO IBEXPERT,
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1 FROM receber R WHERE R.rec_tipo = 22 AND R.rec_quitado = "N"
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3 FROM receber R WHERE R.rec_tipo = 23 AND R.rec_quitado = "N"
SERIA MAIS OU MENOS ISSO, MAS ASSIM SAI UM VALOR EM BAIXO DO OUTRO E NAO DETALHA QUAL É BOLETO 1 E QUAL É BOLETO 3, EU PRECISO QUE SAIA ESSES DOIS SELECTS EM DUAS COLUNAS COM OS RESPECTIVOS NOMES
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1 FROM receber R WHERE R.rec_tipo = 22 AND R.rec_quitado = "N"
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3 FROM receber R WHERE R.rec_tipo = 23 AND R.rec_quitado = "N"
SERIA MAIS OU MENOS ISSO, MAS ASSIM SAI UM VALOR EM BAIXO DO OUTRO E NAO DETALHA QUAL É BOLETO 1 E QUAL É BOLETO 3, EU PRECISO QUE SAIA ESSES DOIS SELECTS EM DUAS COLUNAS COM OS RESPECTIVOS NOMES
Boa tarde amigo, não entendi, pode explicar melhor qual a finalidade do seu Select?
GOSTEI 0
Gustavo Baracca
11/04/2019
Eu fiz o código ve se ajuda
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1, 'Boleto1' as duplicatas from boletos R
WHERE R.rec_tipo = 22 AND R.rec_quitado = 'N'
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3, 'Boleto3' as duplicatas
from boletos R WHERE R.rec_tipo = 23 AND R.rec_quitado = 'N'
depois manda uma mensagem dizendo se deu certo blz.
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_1, 'Boleto1' as duplicatas from boletos R
WHERE R.rec_tipo = 22 AND R.rec_quitado = 'N'
UNION
SELECT SUM (R.rec_vrliq - R.rec_vrpago) AS VR_BOLETO_3, 'Boleto3' as duplicatas
from boletos R WHERE R.rec_tipo = 23 AND R.rec_quitado = 'N'
depois manda uma mensagem dizendo se deu certo blz.
ME AJUDOU MUITO, JA TENHO AS INFORMAÇÕES QUE PRECISO, POREM NAO FICOU DO JEITO QUE EU GOSTARIA, VOU TENTAR EXPLICAR MELHOR PRA VER SE VCS ME AJUDAM
GOSTEI 0
Emerson Nascimento
11/04/2019
Tente assim:
SELECT SUM(CASE WHEN R.rec_tipo = 22 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS VR_BOLETO_1, SUM(CASE WHEN R.rec_tipo = 23 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS VR_BOLETO_3 FROM receber R WHERE R.rec_quitado = "N"
GOSTEI 1
Gustavo Baracca
11/04/2019
PERFEITO ERA EXATAMENTE ISSO, MUITO OBRIGADO
GOSTEI 0
Gustavo Baracca
11/04/2019
EU REFIZ O SELECT CONFORME VOCE ME AJUDOU, E ADICIONEI UM FILTRO DE DATA,
TERIA COMO CONSTRUIR UM FILTRO PELO NOME DA COBRANCA?
TIPO SELECIONO "BOLETO" SAI SÓ AS COBRANCAS QUE É BOLETO, SELECIONO "CARTAO" SAI SÓ AS COBRANCAS DE CARTÃO
SELECT
--BOLETO
SUM(CASE WHEN R.rec_tipo = 22 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_1,
SUM(CASE WHEN R.rec_tipo = 24 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_3,
SUM(CASE WHEN R.rec_tipo = 154 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_FC_1,
SUM(CASE WHEN R.rec_tipo = 155 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_FC_3,
SUM(CASE WHEN R.rec_tipo = 53 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_1,
SUM(CASE WHEN R.rec_tipo = 54 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_3,
SUM(CASE WHEN R.rec_tipo = 156 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_FC_1,
SUM(CASE WHEN R.rec_tipo = 157 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_FC_3,
--CARTAO
SUM(CASE WHEN R.rec_tipo = 32 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS CARTAO_1,
SUM(CASE WHEN R.rec_tipo = 102 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS CARTAO_FC_1
FROM
receber R
WHERE
R.rec_quitado = 'N'
AND R.rec_vencimento BETWEEN :DTINI AND :DTFIM
TERIA COMO CONSTRUIR UM FILTRO PELO NOME DA COBRANCA?
TIPO SELECIONO "BOLETO" SAI SÓ AS COBRANCAS QUE É BOLETO, SELECIONO "CARTAO" SAI SÓ AS COBRANCAS DE CARTÃO
SELECT
--BOLETO
SUM(CASE WHEN R.rec_tipo = 22 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_1,
SUM(CASE WHEN R.rec_tipo = 24 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_3,
SUM(CASE WHEN R.rec_tipo = 154 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_FC_1,
SUM(CASE WHEN R.rec_tipo = 155 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_FC_3,
SUM(CASE WHEN R.rec_tipo = 53 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_1,
SUM(CASE WHEN R.rec_tipo = 54 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_3,
SUM(CASE WHEN R.rec_tipo = 156 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_FC_1,
SUM(CASE WHEN R.rec_tipo = 157 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS BOLETO_MANUAL_FC_3,
--CARTAO
SUM(CASE WHEN R.rec_tipo = 32 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS CARTAO_1,
SUM(CASE WHEN R.rec_tipo = 102 THEN (R.rec_vrliq - R.rec_vrpago) ELSE 0 END) AS CARTAO_FC_1
FROM
receber R
WHERE
R.rec_quitado = 'N'
AND R.rec_vencimento BETWEEN :DTINI AND :DTFIM
GOSTEI 0