Problema na Concatenação de Campos no SQL SERVER 2008R2
14/08/2013
0
Eu estou tentando concatenar dois campos na minha tabela de endereços, esses dois campos seriam: Logradouro e Endereço.
O select é: SELECT CdLog + ' ' +Ender FROM EndCli
Ao invés de resultar isso: AV Paulista
O resultado é esse: AV
Eu notei que esse campo Ender não aparece com nenhum campo, ele só aparece no resultado se eu der um SELECT Ender, CdLog... FROM EndCli, ou seja, sem fazer concatenação nenhuma.
Obs: Os dois campo são do tipo: VARCHAR.
Obrigado.
Wylliam
Post mais votado
14/08/2013
Wylliam
Mais Posts
14/08/2013
Rodrigo Lacerda
Att
14/08/2013
Wylliam
SELECT CdLog+' '+Ender
FROM EndCli
WHERE NrContrCli = '200300418726'
14/08/2013
Wylliam
SELECT CdLog+' '+Ender
FROM EndCli
WHERE NrContrCli = '200300418726'
O problema está na hora de fazer o select no SGBD, eu ainda não testei a query no código do meu programa.
14/08/2013
Deivison Melo
Pesquisa sobre concatenação de campos com o SQL Server...
Dá uma olhadinha no exemplo do link abaixo:
http://social.msdn.microsoft.com/Forums/sqlserver/pt-BR/e63ad5f6-7898-4c30-a6ec-9e5b9de2871f/concatenar-no-sql-server
14/08/2013
Wylliam
CdLog: VARCHAR(10)
Ender: VARCHAR(40)
Não seria questão de incompatibilidade de tipos, mas por desencargo eu fiz assim:
SELECT (CONVERT(VARCHAR(40), CdLog)+' '+CONVERT(VARCHAR(40), Ender)) AS Endereço
FROM EndCli
WHERE NrContrCli = '200300418726'
e
SELECT (CAST(CdLog AS VARCHAR(40))+' '+CAST(Ender AS VARCHAR(40))) AS Endereço
FROM EndCli
WHERE NrContrCli = '200300418726'
Mas o problema persiste.
Obrigado.
14/08/2013
Gabriel Simas
Tente utilizar parenteses como no exemplo abaixo, eu sempre uso desta forma e funciona:
SELECT (LastName + ', ' + FirstName) AS Name FROM Person.Person
14/08/2013
Wylliam
SELECT (CdLog+' '+Ender) As Endereço
FROM EndCli
WHERE NrContrCli = '200300418726'
Não funcionou também.
14/08/2013
Gabriel Simas
SELECT (CdLog+' '+Ender) As Endereço
FROM EndCli
WHERE NrContrCli = '200300418726'
Não funcionou também.
Wyll,
Posta a mensagem de erro pra gente por favor.
Forte Abraço
14/08/2013
Wylliam
Obs: Tanto o CdLog e o Ender contem valores.
14/08/2013
Alex Lekao
Experimenta colocar uma virgula no exemplo da concatenacao para ver se resolve.
Era para ter funcionado.
Em todo caso estou testando com minha base aqui da empresa que temos campos parecidos com o seu, e posto aqui ja ja o codigo que fiz e se funcionou.
Abraco.
14/08/2013
Wylliam
SELECT (CdLog+','+Ender) As Endereço
FROM EndCli
WHERE NrContrCli = '200300418726'
Só me retornou o campo CdLog que é "R" para esse fulano ai...
14/08/2013
Alex Lekao
Muito estranho o que esta acontecendo.
Aqui no meu teste apareceu tudo normal, com espaco entre as aspas, sem espaco, com uma virgula, com dois pontos.
no meu caso os dois campos que usei, bairro e endereco, sao varchar()60.
O codigo eh exatamente este que vc postou?
14/08/2013
Wylliam
Não passa por minha cabeça como isso pode ocorrer
14/08/2013
Alex Lekao
o codlog eh o logradouro certo? avenida, alameda, etc?
experimente usar o substr para ver se da certo.
Clique aqui para fazer login e interagir na Comunidade :)