No Postgres
Para concatenar duas colunas no postgres, ou duas strings utilize ||
SELECT colunaA || colunaB as colunaAB FROM tabela
Contribuição do meu amigo Ivan:
Se você tiver uma coluna que possa ter um valor nulo então é necessário utilizar o operador coalesce pois NULL concatenado com qualquer coisa dá NULL.
SELECT (coalesce((colunaA),'') || coalesce((colunaB),'')) AS colunaAB FROM tabela
Caso seja necessário concatenar colunas do tipo int então será necessário antes disso converter os
coalesce(cast(colunaA as varchar),'') || coalesce(cast(colunaB as varchar), '') as colunaAB
No SQL Server
O sinal de + é usado para concatena strings, desta forma:
SELECT coluna1 + coluna2 as coluna12 FROM tabela
irá concatenar a coluna1 com a coluna2.
Caso sua coluna seja de um tipo diferente, inteiro ou float por exemplo será necessário fazer um cast desta forma:
SELECT (cast(coluna1 as varchar) + ' - ' + cast(coluna2 as varchar)) as coluna12 FROM tabela
Caso uma coluna puder ser nula então use o IsNul(coluna1,’ ‘) para trocar seu valor nulo por um espaço pois lembrem-se nulo com qualquer coisa é sempre nulo.
No MySQL
SELECT concat(coluna1,’ – ‘,coluna2) FROM tabela








Olá, não tenho experência em SQL, mas, tenho um banco de dados enorme, e preciso concatenar duas colonas inteiras. Como poderia fazer isso no Access?
Vlw.
Se você quer fisicamente transformar duas colunas em uma só a minha dica é:
1 – Crie a nova coluna
2 – você deve estar usando asp, faça um script em asp que percorra todas as linhas dessa tabelas e faça o update de sua nova colunas
E mais uma coisa troca esse banco Access tem problemas crônicos por exemplo ele não possui ferramenta remota de gerência e o que é pior, você precisa do Access na máquina para poder gerenciar o banco. Fica a dica se puder troca de banco meta bala, usa mysql, postgres tem um monte de banco com e livre flw
Opa, obrigado!
Usei o DataBase View Editor comandos:
SELECT colunaA + colunaB as colunaAB FROM tabelaX
Deu certo, o problema agora é outro:
Esta pesquisa me deu uma coluna de registros, agora preciso importá-la para um banco de dados, achar coincidências e exportar as tabelas deste banco.
Poderia me ajudar?
Bom ai depende do que o teu banco destino aceita, no caso de um mysql por exemplo você pode exportar um cvs, ou ainda uma solução mais genérica e que funciona para todos os bancos é fazer um script que leia a linhas que essa sua consulta te retornou e gere os INSERT INTO, depois executa este resultado no teu banco de destino.
Boa tarde, estou com um problema onde preciso comparar um campo concatenado no SQL sever e não estou conseguindo a sintaxe é a :
SELECT campo1, campo2 FROM tabela WHERE (campo1 + campo2) campo3
todos são campos de texto, alguém pode me ajudar por favor ?
Att’
Diego.
tenta assim
SELECT campo1, campo2, (campo1+campo2) as teste FROM tabela WHERE teste = ‘teeee’
por favor, no exemplo do sql como resolver caso apareça no meio das selecoes um valor em uma das colunas NULL? obrigado!
essa coluna que ta voltando NULL é de que tipo, se for varchar da uma olhada se o valor default do campo esta null, se sim deixa em braco, ou tenta fazer um casta igual o que foi feito com o postgres
na realidade é uma tabela importada do excell, que eu preciso jogar em uma tabela do sistema… o campo de destino é um varchar agora o de origem(excell) nvarchar…
Opa… Muito boa a dica… Me salvou hoje utilizando o MySQL.
Abraços!!
o post é bem antiguinho, mas…. há outra forma de concatenar semelhante ao postgreSQL?
No Oracle você pode concatenar igual o ao postgre ( utilizando 2 pipe’s “||” )
digo… se há como concatenar no MySQL semelhante ao postgreSQL… há como?