Iremos conhecer as técnicas:
1\. Obter os 10 primeiros registros (TOP, COUNT, ORDER BY):
- Utilize a cláusula TOP junto com ORDER BY para obter os primeiros N registros.
Exemplo:
SELECT TOP 10 *
FROM TableName
ORDER BY SomeColumn;
2\. Obter os primeiros 1% dos registros (TOP PERCENT, ORDER BY):
- Use TOP com a cláusula PERCENT para obter uma porcentagem específica de registros.
Exemplo:
SELECT TOP 1 PERCENT *
FROM TableName
ORDER BY SomeColumn;
3\. Identificar a ordem numérica do registro (ROW\_NUMBER, OVER):
- Utilize a função de janela ROW\_NUMBER() para atribuir um número de linha a cada registro.
Exemplo:
SELECT SomeColumns, ROW_NUMBER() OVER (ORDER BY SomeColumn) AS RowNum
FROM TableName;
4\. Obter 1% dos registros aleatórios (ORDER BY, NEWID):
- Use ORDER BY NEWID() para embaralhar os registros e, em seguida, aplique a cláusula TOP com PERCENT.
Exemplo:
SELECT TOP 1 PERCENT *
FROM TableName
ORDER BY NEWID();
5\. Obter amostras aproximadas por quantidade de linhas (TABLESAMPLE, ROWS):
- Utilize a cláusula TABLESAMPLE para obter uma amostra aproximada de uma tabela por número de linhas.
Exemplo:
SELECT *
FROM TableName TABLESAMPLE (100 ROWS);
6\. Obter amostras aproximadas por percentagem (TABLESAMPLE, PERCENT):
- Use TABLESAMPLE com a porcentagem desejada para obter uma amostra aproximada por percentagem.
Exemplo:
SELECT *
FROM TableName TABLESAMPLE (1 PERCENT);
Essas são técnicas comuns para limitar o número de registros retornados em consultas SQL no Microsoft SQL Server. Escolha a abordagem mais adequada ao seu caso de uso.