ajuda com erro em query

21/01/2013

0

Pessoal,

Tenho esta query que esta dando o seguinte erro onde esta destacado em MAIUSCULO (segunda linha - case when...):

"A conversão implícita do valor varchar em char não pode ser executada porque o agrupamento do valor não está resolvido devido a um conflito de agrupamento."

select tm.numeromov,tm.codcfo,f.nome,CB.codcesta, tm.DATAEMISSAO,


CASE WHEN CB.ENDENTREGA IS NULL THEN F.RUA ELSE CB.ENDENTREGA END AS ENDENTREGA,


cb.cidadeentrega,cb.complentrega,cb.dataentrega,cb.numentrega,cb.motorista,cb.confmontador,
f.RUAENTREGA,f.RUA,f.NUMERO,f.NUMEROENTREGA,f.BAIRRO,f.BAIRROENTREGA,f.TELEFONE,f.TELEFONEENTREGA
,f.CIDADE,f.CIDADEENTREGA,f.CODETD,f.CODETDENTREGA
from tmov tm
inner join TMOVCOMPL tmc on (tmc.IDMOV = tm.idmov)
inner join FCFO f on (f.CODCFO = tm.codcfo)
inner join varejaocereais.dbo.CestaBasica cb on (cb.codcesta = tmc.CODIGOCESTAS collate database_default)
where tm.STATUS <> ''C'' and tm.CODTMV = ''2.2.01''
and tm.DATAEMISSAO >=''17/01/2013''
and tm.DATAEMISSAO <=''17/01/2013''
order by f.NOME


Se alguém puder ajudar, fico grato.
Victor Pavia

Victor Pavia

Responder

Posts

21/01/2013

Alex Lekao

oi boa tarde!!!

experimenta forcar uma conversão para ver se funciona.

desculpe não ajudar muito, mas não consegui entender bem o código.

Abraco.

Alex - Lekao
Responder

01/02/2013

Ricardo Araujo

Fiz algumas mudança no seu SQL, da uma olhada acho que é isto..



select tm.numeromov,tm.codcfo,f.nome,CB.codcesta, tm.DATAEMISSAO,

CASE
WHEN CB.ENDENTREGA IS NULL THEN
convert(varchar(20), F.RUA)
ELSE
convert(varchar(20), CB.ENDENTREGA)
END AS ENDENTREGA,

cb.cidadeentrega,
cb.complentrega,
cb.dataentrega,
cb.numentrega,
cb.motorista,
cb.confmontador,
f.RUAENTREGA,
f.RUA,
f.NUMERO,
f.NUMEROENTREGA,
f.BAIRRO,
f.BAIRROENTREGA,
f.TELEFONE,
f.TELEFONEENTREGA,
f.CIDADE,
f.CIDADEENTREGA,
f.CODETD,
f.CODETDENTREGA
from tmov tm inner join TMOVCOMPL tmc on (tmc.IDMOV = tm.idmov)
inner join FCFO f on (f.CODCFO = tm.codcfo)
inner join varejaocereais.dbo.CestaBasica cb on (cb.codcesta = tmc.CODIGOCESTAS collate database_default)
where tm.STATUS <> 'C' and tm.CODTMV = '2.2.01'
and CONVERT(date, tm.DATAEMISSAO, 103) between
convert(date, '17/01/2013', 103) and CONVERT(date, '17/01/2013', 103)

order by f.NOME
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar