Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the breadcrumb-navxt domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/devtools/public_html/blog/wp-includes/functions.php on line 6131

Deprecated: A função WP_Dependencies->add_data() foi chamada com um argumento que está obsoleto desde a versão 6.9.0! Os comentários condicionais do IE são ignorados por todos os navegadores compatíveis. in /home/devtools/public_html/blog/wp-includes/functions.php on line 6131
Concatenando dados no SQL Server

Concatenando dados no SQL Server

A concatenação de dados é o resultado da junção de mais de uma informação, que podem ou não estar na mesma coluna da tabela. Um exemplo prático de concatenação que usamos em nosso dia a dia é o telefone: DDD + Número.

Já abordei aqui no blog como realizar a concatenação em MySQL e PostgreSQL:

No SQL Server, em especifico nas versões anteriores a 2012, a forma de concatenação é diferente dos demais bancos de dados.

O formato nativo do é:

select 
  ‘(‘ + cod_area + ‘) ‘ + telefone
from
  clientes ;

Como vemos, os dados são concatenados com auxílio do operador + (mais).

Já na versão 2012, o SQL Server incorporou como função nativa o Concat, assim como o MySQL e Oracle:

select
  concat(‘(‘, cod_area, ‘)’, telefone)
from
  clientes ;

É importante se ressaltar que, a concatenação de tipos de dados diferentes pode causar erros no resultado do select, fique atento quanto a isto.

Grande abraço e até a próxima.

Referências:
http://blog.sqlauthority.com/2010/11/25/sql-server-concat-function-in-sql-server-sql-concatenation/
http://msdn.microsoft.com/pt-br/library/hh231515.aspx
http://stackoverflow.com/questions/10550307/concat-function-in-sql-server

2 comentários em “Concatenando dados no SQL Server”

  1. Uma boa prática também é usar o COALESCE combinado com o CONCAT, não sei no caso do MSSQL, mas no MySQL, uso assim:

    SELECT CONCAT(coalesce(cidade,''), ' – ', coalesce(municipio,'')) AS local FROM TABELA

    isso impede trazer a concatenação totalmente vazia, caso um dos campos concatenados seja nulo, então ele converte para vazio e concatena, trazendo:

    FORTALEZA – CE
    LAURO DE FREITAS – BA
    "CAMPO VAZIO" – SP

Deixe um comentário