SQLShack (Português)

este artigo explora a manipulação de texto usando a função SQL Coalesce no servidor SQL.

String manipulation é um processo para gerar outra forma de dados existentes de uma forma que o negócio usa ou exibe como resultados nos relatórios. Artigos anteriores da função de string sql, que eu escrevi, incluindo funções de string SQL para Munging de dados e visão geral da função de Substring SQL discutiram preparação de dados e tarefas de gerenciamento de dados usando funções de string do servidor SQL.,

SQL server also has some built-in character functions that also allow us to manipulate and transform data. Ao mesmo tempo, é importante examinar o conjunto de dados, explorar os valores dos dados e codificar ou descodificar os valores, conforme necessário, para gerar dados significativos. É importante saber navegar através dos valores em falta nos nossos conjuntos de dados, compreender o impacto nos cálculos, consultas, relatórios e preparação do conjunto de dados e elaborar técnicas para evitar que os valores nulos estraguem os nossos conjuntos de resultados.

o que é um valor nulo?,

Antes de nos debruçarmos sobre como navegar no campo minado potencial de conjuntos de dados com valores em falta e evitar pisar um Null, vamos primeiro dar uma olhada rápida no que é um NULL.

como definido pelo Wikipedia

Null (ou NULL) é um marcador especial usado na Linguagem de consulta estruturada para indicar que um valor de dados não existe na base de dados. Introduzido pelo criador do modelo de banco de dados relacional, E. F., Codd, SQL Null serve para cumprir o requisito de que todos os verdadeiros sistemas de gestão de bases de dados relacionais (RDBMS) suportam uma representação de “informação em falta e informação inaplicável”. Codd também introduziu o uso do símbolo omega (ω) Grego minúsculo para representar nulo na teoria do banco de dados. Em SQL, NULL é uma palavra reservada usada para identificar este marcador. … Isto não deve ser confundido com um valor de 0. Um valor nulo indica a falta de um valor — a falta de um valor não é a mesma coisa que um valor de zero, da mesma forma que a falta de uma resposta não é a mesma coisa como uma resposta de “não”.,

além disso …

SQL null é um estado, não um valor. Este uso é bastante diferente da maioria das linguagens de programação, onde o valor nulo de uma referência significa que não está apontando para nenhum Objeto.

SQL oferece alguma funcionalidade útil para trabalhar com os seus dados de carácter nas suas consultas SQL que iremos descrever em detalhe a função Coalesce SQL as funções SQL Coalesce e IsNull são usadas para lidar com valores nulos. Durante o processo de avaliação da expressão, os valores nulos são substituídos pelo valor definido pelo utilizador.,

A função SQL Coalesce avalia os argumentos em ordem e devolve sempre o primeiro valor não nulo da lista de argumentos definida.

a Sintaxe

COALESCE ( expressão )

Propriedades do SQL função de Adesão

  1. Expressões devem ser do mesmo tipo de dados
  2. pode conter várias expressões
  3. O SQL função de Adesão é um atalho sintático para a expressão Case
  4. Sempre avaliada por um número inteiro, primeiro, um número inteiro seguido por expressão de caracteres rendimento de inteiros como uma saída.,

Exemplos:

SQL Fundem-se em uma seqüência de operação de concatenação

No exemplo a seguir, vamos concatenar alguns valores. Mas, mais uma vez, É só uma revisão para lhe dizer o que acontece quando temos um valor nulo. Então, vamos em frente e executar o T-SQL. E podemos ver que encontramos um valor nulo enquanto processamos a operação de concatenação de strings. O servidor SQL devolve simplesmente nulo sempre que encontrar o valor nulo. O resultado não é uma combinação do primeiro nome, null, e sobrenome.,

1
SELECT firstName +’ ‘+MiddleName+’ ‘+ LastName FullName FROM Person.Person

Let us handle the NULL values using a function called SQL COALESCE. It allows handling the behavior of the NULL value., Então, neste caso, use a função coalesce SQL para substituir qualquer nome do meio valores nulos com um valor ” (Char (13) – espaço). A declaração SQL ainda deve concatenar todos os três nomes, mas nenhum valor nulo irá aparecer na saída. Agora vemos que o nome completo é mostrado com um espaço no meio, para valores nulos. Desta forma, é possível personalizar eficientemente os valores da coluna.,

1
SELECIONE o nome +’ ‘+COALESCE(MiddleName,”) +’ ‘+ Sobrenome DA Pessoa.Pessoa

SQL função de Adesão e girando

O exemplo a seguir retorna o concatenado valores não nulos da tabela ‘estado’. Em alguns casos, você pode precisar atribuir os valores estáticos concatenados a uma variável., Neste caso, os valores da coluna da cidade são analisados usando a função Coalesce SQL e concatenados dentro de uma única citação para preparar uma cadeia de valores. O resultado é então manipulado para remover o último caractere para obter uma cadeia de valor de entrada válida.,

Output:

1
SELECT ‘(‘+substring(@col,1,len(@col)-1)+’)’

Scalar user-defined function and SQL Coalesce function

A user-defined function is created to return a string specific to the provided input and then the output is grouped using a grouping clause., No exemplo seguinte, a função escalar valorizada devolve os valores de cadeia concatenados separados por’, ‘ para uma entrada especificada de ‘Cidade’. O exemplo seguinte retorna uma saída onde a coluna de Estado é agrupada e seus valores de cidades são concatenados e separados por um delimitador ‘,’ (vírgula). Você também pode usar STRING_AGG se estiver usando o servidor SQL 2017. Você pode referir mais informações com as funções Top SQL string no servidor SQL 2017

Aqui é como chamamos o nome da função dbo.tfn_CoalesceConcat na instrução select.,

The output is a concatenated stream of values separated by a delimiter ‘,’

1
2
3
4

SELECT state, city = dbo.tfn_CoalesceConcat(state)
FROM dbo.,estado
GRUPO POR estado
ORDEM PELO estado;

validação de Dados usando o SQL função de Adesão

No exemplo a seguir, vamos encontrar a emergência contatos de funcionários. Normalmente, em qualquer organização, os números de telefone do empregado estão listados em trabalho, casa, colunas de telefone celular.vamos ver como encontrar Empregados onde não há contactos de emergência ou, por outras palavras, vamos ver todos os detalhes do empregado com contactos de emergência.,no exemplo seguinte, o tb_EmergencyContact detém os números de contacto de todos os empregados.

A função SQL Coalesce é usada para selecionar as colunas homephone, workphone e celular. No caso de valores nulos, o valor ‘NA’ (Não aplicável), uma string literal é retornada.

SQL Coalescem e Calculado colunas

O exemplo a seguir usa o SQL COALESCEM para comparar os valores das hourlywage, salário e comissão colunas e devolver apenas o valor não-nulo encontrado nas colunas.,

O seguinte T-SQL é usado para listar o total de salários pagos a todos os funcionários

Agora, Vamos ver um exemplo para criar uma coluna calculada com o SQL função de Adesão no SQL Server

Em geral, podemos usar a expressão em tabelas. Em tabelas, é necessário calcular os valores que são frequentemente calculados usando várias colunas existentes e com poucos valores escalares da tabela. Além disso, estas colunas são dependentes de uma ou mais outras colunas., Desta forma, podemos criar uma coluna computada usando a função Coalesce SQL para que os valores nulos sejam manuseados eficientemente.

Agora, você pode ver que uma instrução de seleção simples mostra os resultados pré-calculados.

SQL COALESCE e expressão de caso

a função SQL COALESCE pode ser representada sintaticamente usando a expressão de caso. Por exemplo, como sabemos, a função Coalesce retorna os primeiros valores não nulos.,

selecione COALESCE (expression1, expression2, expression3) do nome de tabela;

A declaração SQL do Coalesce acima pode ser reescrita usando a declaração de caso.,id=”6df95ef3dd”>

1
2
3
4
5
6
7
8
9
10
11
12
SELECIONE
nome+”+sobrenome completo,
relacionamento,
CASO
QUANDO homephone NÃO é NULO, em Seguida, homephone
QUANDO o telemóvel NÃO é NULO, em Seguida, celular
QUANDO o telefone comercial é NÃO NULO, em Seguida, telefone comercial
ELSE ‘NA’
ÍNDIA
EmergencyContactNumber
a PARTIR do
dbx.,tb_EmergencyContact

a consulta devolve o mesmo resultado que a que usa a função COALESCE.

Wrap Up

neste artigo, discutimos algumas dicas e truques para demonstrar o uso da função SQL Coalesce para consultar eficazmente com o T-SQL. Também discutimos vários casos de uso da função de Coalesce SQL. Também é possível otimizar a saída criando uma coluna computada. espero que tenha gostado deste artigo sobre a função Coalesce no servidor SQL., Sinta-se livre para fazer quaisquer perguntas nos comentários abaixo.

  • Autor
  • Posts Recentes
Eu sou um Banco de dados tecnólogo em ter 11+ anos de rica experiência em tecnologias de Banco de dados. Eu sou um profissional certificado pela Microsoft e apoiado com um grau em Master of Computer Application.
minha especialidade reside em projetar & implementando soluções de alta disponibilidade e migração de DB entre plataformas., As tecnologias atualmente em funcionamento são SQL Server, PowerShell, Oracle e MongoDB.,
Ver todos os posts por Prashanth Jayaram

posts mais Recentes por Prashanth Jayaram (ver todas)
  • Uma rápida visão geral de auditoria de banco de dados em SQL – janeiro 28, 2021
  • Como configurar Azure Sincronização de Dados entre bancos de dados SQL Azure e local do SQL Server – 20 de janeiro de 2021
  • Como realizar Azure SQL database operações de Importação/Exportação usando o PowerShell – 14 de janeiro de 2021

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *