terça-feira, 3 de dezembro de 2013

Usando Aliases e Literais de Strings - SQL na Prática

O que são Aliases

As aliases podem ser atribuídas para colunas na lista de seleção e para fontes de dados na cláusula FROM; Declarações de SELECT podem ser feitas facilmente para serem lidas usando ALIASES (apelidos).

Aliases, tanto para colunas e tabelas, dentro de uma instrução SELECT são feitas para tornar a digitação e a leitura da declaração mais simples;

As Aliases não fazem somente a declaração mais fácil de ler, mas também podem fazer mais fáceis de ler e interpretar o conjunto de resultados;

Na prática:
- A cláusula opcional AS pode ser adicionada para que a declaração fique mais legível;
Ambas as declarações abaixo são equivalentes;

SELECT e.ContactID AS 'Employee Identification Number'
FROM HumanResources.Employee AS e

SELECT e.ContactID 'Employee Identification Number'
FROM HumanResources.Employee AS e


Literais de string:

- São valores constantes;
- Pode ser inserida dentro de uma coluna derivada para formatar um dado;
- Pode ser usada como valores alternativos em funções, como na função ISNULL();

-- Se MiddleName for null, ele retorna o '' (sem espaço)
-- Substring pega a desde a posição 1 (1º parâmetro)
-- de MiddleName, mais 1 caractere (2º parâmetro)

SELECT (LastName + ',' + FirstName + ''
 + ISNULL(SUBSTRING(MiddleName,1,1),'')) as Name
FROM Person.Contact
ORDER BY LastName,FirstName,MiddleName;

SELECT (LastName + ',' + SUBSTRING(FirstName,1,2)) as Name
FROM Person.Contact
ORDER BY LastName,FirstName,MiddleName;

Literais de strings são Strings estáticas que são inseridas dentro de colunas derivadas, como uma vírgula entre partes de um nome concatenado. Eles também podem ser usados como valores alternativos em vez do valor da coluna numa função como NULLIF() e COALESCE().

- Aliases de Colunas e tabelas não são literais de Strings;
- Literais de strings podem ser usadas por funções como retorno de valores alternativos;