Iremos conhecer as técnicas:
1\. Relacionar todas as colunas existentes das tabelas (INFORMATION\_SCHEMA.COLUMNS):
- Para listar todas as colunas de todas as tabelas no banco de dados:
SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
2\. Filtrar as colunas por tipo de dados (WHERE, DATA\_TYPE, IN):
- Para listar colunas de um tipo de dados específico:
SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE DATA_TYPE IN ('int', 'varchar')
3\. Obter valores mínimos e máximos da coluna (MIN, MAX):
- Para encontrar os valores mínimo e máximo de uma coluna:
SELECT MIN(Coluna), MAX(Coluna)
FROM Tabela
4\. Converter resultado SQL para o formato XML (FOR XML, RAW, AUTO):
- Para converter resultados de uma consulta em XML:
SELECT Coluna1, Coluna2
FROM Tabela
FOR XML RAW, ELEMENTS
5\. Declarar variável de tipo texto (DECLARE, VARCHAR):
- Para declarar uma variável de tipo texto:
DECLARE @MinhaVariavel VARCHAR(50)
6\. Concatenar valores da tabela em variável (@VARIAVEL):
- Para concatenar valores de uma coluna em uma variável:
SELECT @MinhaVariavel = @MinhaVariavel + Coluna
FROM Tabela
7\. Criar consulta SQL dinâmica:
- Para criar uma consulta SQL dinâmica:
DECLARE @ConsultaDinamica NVARCHAR(MAX)
SET @ConsultaDinamica = 'SELECT Coluna FROM Tabela'
8\. Garantir que a variável tipo texto esteja no formato válido para o objeto (QUOTENAME, IDENTIFIER):
- Para garantir que uma variável seja um nome de objeto válido:
SET @MinhaVariavel = QUOTENAME(@MinhaVariavel)
9\. Obter da variável tipo texto todos os caracteres menos o último (RIGHT, LEN):
- Para obter todos os caracteres, exceto o último, de uma variável de texto:
SET @MinhaVariavel = RIGHT(@MinhaVariavel, LEN(@MinhaVariavel) - 1)
10\. Manipular os dados da estrutura XML (NODES, VALUE):
- Para manipular dados em uma estrutura XML:
SELECT
XmlColumn.value('(Path/To/Node)[1]', 'varchar(50)') AS Valor
FROM Tabela
11\. Criar tabela automaticamente com o resultado de consulta (INTO, FROM):
- Para criar uma tabela com base no resultado de uma consulta:
SELECT Coluna1, Coluna2
INTO NovaTabela
FROM TabelaExistente
12\. Executar consulta SQL dinâmica (EXEC):
- Para executar uma consulta SQL dinâmica:
EXEC sp_executesql @ConsultaDinamica
Lembre-se de adaptar os exemplos conforme a estrutura específica do seu banco de dados e as necessidades da sua consulta.