none
Group BY RRS feed

  • Pergunta

  • Boa tarde!

    Não estou conseguindo agrupar pelo campo VALOR BAIXADO:

    WITH SQ1 AS (
    select
    a.PAGREC,
    A.IDLAN,
    convert(varchar(10),a.DATAEMISSAO,103) as 'EMISSÃO',
    convert(varchar(10),a.DATAVENCIMENTO,103) as 'VENCIMENTO',
    CAST(a.VALORORIGINAL AS money) as 'VALOR ORIGINAL',
    b.NOMEFANTASIA,
    a.NUMERODOCUMENTO,
    d.DESCRICAO
    from flan as A
    inner join fcfo as B
    on a.CODCOLCFO=b.CODCOLIGADA and a.CODCFO=b.CODCFO
    inner join ftdo as D
    on a.CODCOLIGADA=D.CODCOLIGADA and a.CODTDO=D.CODTDO
    where a.CODFILIAL='3' and a.STATUSLAN IN ('0','4') and a.CLASSIFICACAO IN ('0','32') and a.NUMERODOCUMENTO='10969/01'),

    SQ2 AS (
    select
    a.IDLAN,
    cast(a.VALORORIGINAL as money) as 'VALOR BAIXADO'
    from FLANBAIXA as A
    where a.NUMCONTABILBX='10969/01')

    SELECT
    (SQ1.[VALOR ORIGINAL]),
    sum(SQ2.[VALOR BAIXADO]) as 'VALOR BAIXADO',
    (sq1.[VALOR ORIGINAL]-sq2.[VALOR BAIXADO]) as 'SALDO'
    FROM SQ1
    INNER JOIN SQ2
    ON SQ1.IDLAN=SQ2.IDLAN
    group by
    sq1.[VALOR ORIGINAL],
    sq2.[VALOR BAIXADO]

    Valor Original   Valor Baixado    

    239,57                1,38        238,19
    239,57            230,74            8,83

    Agradeço a ajuda!

    Adriano.

    terça-feira, 4 de setembro de 2018 14:55

Respostas

  • Boa tarde,

    Não sei se entendi corretamente a questão mas acho que você poderia fazer a soma na SQ2 e no final apenas o Join. Ex:

    WITH SQ1 AS (
    select
    a.PAGREC,
    A.IDLAN,
    convert(varchar(10),a.DATAEMISSAO,103) as 'EMISSÃO',
    convert(varchar(10),a.DATAVENCIMENTO,103) as 'VENCIMENTO',
    CAST(a.VALORORIGINAL AS money) as 'VALOR ORIGINAL',
    b.NOMEFANTASIA,
    a.NUMERODOCUMENTO,
    d.DESCRICAO
    from flan as A
    inner join fcfo as B
    on a.CODCOLCFO=b.CODCOLIGADA and a.CODCFO=b.CODCFO
    inner join ftdo as D
    on a.CODCOLIGADA=D.CODCOLIGADA and a.CODTDO=D.CODTDO
    where a.CODFILIAL='3' and a.STATUSLAN IN ('0','4') and a.CLASSIFICACAO IN ('0','32') and a.NUMERODOCUMENTO='10969/01'),
    
    SQ2 AS (
    select
    a.IDLAN,
    sum(cast(a.VALORORIGINAL as money)) as 'VALOR BAIXADO'
    from FLANBAIXA as A
    where a.NUMCONTABILBX='10969/01')
    
    SELECT
    SQ1.[VALOR ORIGINAL],
    SQ2.[VALOR BAIXADO],
    sq1.[VALOR ORIGINAL] - sq2.[VALOR BAIXADO] as 'SALDO'
    FROM SQ1
    INNER JOIN SQ2
    ON SQ1.IDLAN = SQ2.IDLAN
    

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    terça-feira, 4 de setembro de 2018 15:20

Todas as Respostas

  • Boa tarde!

    Não estou conseguindo agrupar pelo campo VALOR BAIXADO:

    WITH SQ1 AS (
    select
    a.PAGREC,
    A.IDLAN,
    convert(varchar(10),a.DATAEMISSAO,103) as 'EMISSÃO',
    convert(varchar(10),a.DATAVENCIMENTO,103) as 'VENCIMENTO',
    CAST(a.VALORORIGINAL AS money) as 'VALOR ORIGINAL',
    b.NOMEFANTASIA,
    a.NUMERODOCUMENTO,
    d.DESCRICAO
    from flan as A
    inner join fcfo as B
    on a.CODCOLCFO=b.CODCOLIGADA and a.CODCFO=b.CODCFO
    inner join ftdo as D
    on a.CODCOLIGADA=D.CODCOLIGADA and a.CODTDO=D.CODTDO
    where a.CODFILIAL='3' and a.STATUSLAN IN ('0','4') and a.CLASSIFICACAO IN ('0','32') and a.NUMERODOCUMENTO='10969/01'),

    SQ2 AS (
    select
    a.IDLAN,
    cast(a.VALORORIGINAL as money) as 'VALOR BAIXADO'
    from FLANBAIXA as A
    where a.NUMCONTABILBX='10969/01')

    SELECT
    (SQ1.[VALOR ORIGINAL]),
    sum(SQ2.[VALOR BAIXADO]) as 'VALOR BAIXADO',
    (sq1.[VALOR ORIGINAL]-sq2.[VALOR BAIXADO]) as 'SALDO'
    FROM SQ1
    INNER JOIN SQ2
    ON SQ1.IDLAN=SQ2.IDLAN
    group by
    sq1.[VALOR ORIGINAL],
    sq2.[VALOR BAIXADO]

    Valor Original   Valor Baixado    

    239,57                1,38        238,19
    239,57            230,74            8,83

    Agradeço a ajuda!

    Adriano.


    terça-feira, 4 de setembro de 2018 14:57
  • Boa tarde,

    Não sei se entendi corretamente a questão mas acho que você poderia fazer a soma na SQ2 e no final apenas o Join. Ex:

    WITH SQ1 AS (
    select
    a.PAGREC,
    A.IDLAN,
    convert(varchar(10),a.DATAEMISSAO,103) as 'EMISSÃO',
    convert(varchar(10),a.DATAVENCIMENTO,103) as 'VENCIMENTO',
    CAST(a.VALORORIGINAL AS money) as 'VALOR ORIGINAL',
    b.NOMEFANTASIA,
    a.NUMERODOCUMENTO,
    d.DESCRICAO
    from flan as A
    inner join fcfo as B
    on a.CODCOLCFO=b.CODCOLIGADA and a.CODCFO=b.CODCFO
    inner join ftdo as D
    on a.CODCOLIGADA=D.CODCOLIGADA and a.CODTDO=D.CODTDO
    where a.CODFILIAL='3' and a.STATUSLAN IN ('0','4') and a.CLASSIFICACAO IN ('0','32') and a.NUMERODOCUMENTO='10969/01'),
    
    SQ2 AS (
    select
    a.IDLAN,
    sum(cast(a.VALORORIGINAL as money)) as 'VALOR BAIXADO'
    from FLANBAIXA as A
    where a.NUMCONTABILBX='10969/01')
    
    SELECT
    SQ1.[VALOR ORIGINAL],
    SQ2.[VALOR BAIXADO],
    sq1.[VALOR ORIGINAL] - sq2.[VALOR BAIXADO] as 'SALDO'
    FROM SQ1
    INNER JOIN SQ2
    ON SQ1.IDLAN = SQ2.IDLAN
    

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    terça-feira, 4 de setembro de 2018 15:20