none
Valores NULL em query concatenada RRS feed

  • Pergunta

  • Tenho uma query totalmente concatenada, pois preciso gerar um arquivo txt porem ela me traz valores null e não sei como tirar ja que utilizo varias tabelas (inner) e todos os campos são concatenados. Me disseram pra colocar o ISNULL, mas o resultado é o mesmo, várias colunas com "NULL"

    select  ISNULL (C.Nome, ' ') + ' , '
    + ISNULL (C.CodSexo, ' ') + ' , '
    + convert(varchar,C.DataNascimento,103) + ', '
    + ISNULL (C.EnderecoResidencial, ' ')+', '+ (C.NumeroResidencial)+', '+ C.ComplementoResidencial + '  '
    + ISNULL (C.BairroResidencial, ' ')+ ', '
    + ISNULL (RMae.nome, ' ')+ ', '
    + ISNULL (RPai.nome, ' ')+ ', '
    + ISNULL (CS.Nome, ' ')+ ', '
    + ISNULL (T.Descricao, ' ')+ ', '
    + ISNULL (T.CodTurno, ' ')
    from Matricula M inner join Cliente C
    on M.CodCliente = C.CodCliente inner join Responsavel RPai 
    on c.Codpai = RPai.CodResponsavel inner join Responsavel RMae
    on c.Codmae = RMae.CodResponsavel inner join Curso CS
    on M.CodCurso = CS.CodCurso inner join Turma T
    on M.CodTurma = T.CodTurma
    where M.CodPeriodoLetivo = '2016' and M.datacancelamento is null
    order by  C.Nome

    quinta-feira, 4 de fevereiro de 2016 11:17

Respostas

  • Tem alguns campos que estão sem o ISNULL (C.NumeroResidencial e C.ComplementoResidencial e C.DataNascimento). Outra alternativa é usar o COALESCE para tratamento, porém o ISNULL já deveria resolver.
    • Marcado como Resposta TANBIO quinta-feira, 4 de fevereiro de 2016 12:36
    quinta-feira, 4 de fevereiro de 2016 11:24

Todas as Respostas

  • Tem alguns campos que estão sem o ISNULL (C.NumeroResidencial e C.ComplementoResidencial e C.DataNascimento). Outra alternativa é usar o COALESCE para tratamento, porém o ISNULL já deveria resolver.
    • Marcado como Resposta TANBIO quinta-feira, 4 de fevereiro de 2016 12:36
    quinta-feira, 4 de fevereiro de 2016 11:24
  • Tenho uma query totalmente concatenada, pois preciso gerar um arquivo txt porem ela me traz valores null e não sei como tirar ja que utilizo varias tabelas (inner) e todos os campos são concatenados. Me disseram pra colocar o ISNULL, mas o resultado é o mesmo, várias colunas com "NULL"

    select  ISNULL (C.Nome, ' ') + ' , '
    + ISNULL (C.CodSexo, ' ') + ' , '
    + convert(varchar,C.DataNascimento,103) + ', '
    + ISNULL (C.EnderecoResidencial, ' ')+', '+ (C.NumeroResidencial)+', '+ C.ComplementoResidencial + '  '
    + ISNULL (C.BairroResidencial, ' ')+ ', '
    + ISNULL (RMae.nome, ' ')+ ', '
    + ISNULL (RPai.nome, ' ')+ ', '
    + ISNULL (CS.Nome, ' ')+ ', '
    + ISNULL (T.Descricao, ' ')+ ', '
    + ISNULL (T.CodTurno, ' ')
    from Matricula M inner join Cliente C
    on M.CodCliente = C.CodCliente inner join Responsavel RPai 
    on c.Codpai = RPai.CodResponsavel inner join Responsavel RMae
    on c.Codmae = RMae.CodResponsavel inner join Curso CS
    on M.CodCurso = CS.CodCurso inner join Turma T
    on M.CodTurma = T.CodTurma
    where M.CodPeriodoLetivo = '2016' and M.datacancelamento is null
    order by  C.Nome

    Você está gerando direto pelo SQL Server?

    Fulvio C

    quinta-feira, 4 de fevereiro de 2016 12:26
  • Muito obrigado!
    quinta-feira, 4 de fevereiro de 2016 12:36