E no caso de 'deslocamento':
Selecione * da linha Limite de tabela Limpa Offset 'Linha para pular';Cláusula de limite simples
Movendo -se em direção a exemplos do tópico em discussão. Considere uma tabela chamada "pratos". O conteúdo da tabela de até 3 linhas desde o início deve ser exibido como saída. E essa seleção é feita classificando os dados em linhas de acordo com a coluna de identificação. 'Limit' é a palavra -chave usada para controlar a visualização criada para o usuário na tabela. Em primeiro lugar, exibiremos todo o conteúdo da tabela 'pratos' usando um comando select
>> selecione * de pratos;Agora aplicaremos a consulta para exibir as linhas até 3rd eu ia.
>> Selecione * a partir da ordem dos pratos por limite de identificação 3;Através do snap, você pode ver a saída em que as duas últimas linhas são deduzidas devido à restrição limite que é aplicada à tabela.
Cláusula de limite com uma cláusula de deslocamento
O segundo exemplo envolve o uso de 'deslocamento' junto com a palavra -chave 'limite'. Esta cláusula pula/pula as fileiras do número de deslocamento 'nd'. A diferença entre o limite e a cláusula de deslocamento é que o limite conta o número até o qual queremos exibir os dados, enquanto o deslocamento remove essa linha ou linhas específicas da tabela, fornecendo o número de deslocamento no comando. Agora aplicaremos as duas cláusulas na consulta, por isso obtemos a saída desejada.
>> Selecione * a partir da ordem dos pratos por limite de identificação 3 deslocamento 1;O comando acima mostra que o limite “3” é usado, o que significa que a tabela resultante conterá apenas 3 linhas na tabela e compensar “1” significa que a primeira linha será deduzida da saída. Portanto, de 5, apenas três linhas são exibidas devido ao limite e deslocamento.
Uso da cláusula limite com a cláusula de ordem
Além do limite, também podemos usar a cláusula de ordem para exibir dados da tabela. Isso funcionará para que todo o conteúdo seja organizado em uma ordem especificada na consulta. Então a parte do limite será considerada executada. Vamos dar uma olhada.
>> Selecione * a partir de pratos Order by Type Desc Limit 4;Esta consulta descreve que o resultado é organizado em primeiro lugar após a coluna especificada 'Type'. Então, uma vez que as 5 linhas estiverem dispostas em frente à ordem alfabética do 'tipo', as 4 primeiras linhas são exibidas.
Limite como nulo
Se especificarmos a cláusula 'limite' como nula, ela não aplicará nenhuma alteração na tabela. Aqui exibimos apenas a coluna 'ID' apenas para verificar a eficácia da cláusula 'Limit'.
>> Selecione ID de pratos Limite NULL;Laços… buscar primeiro
Este exemplo é o uso de "laços" na cláusula de limite. Isso ajuda a obter todos os dados que são usados repetidamente em qualquer coluna da tabela. Para esse propósito específico, criaremos uma nova tabela primeiro que tenha uma única coluna de id
>> Crie a Tabela Tbl1 (em Int)Em seguida, insira valores nele.
>> Insira nos valores de Tbl1 (1), (5), (4), (6);Normalmente, quando introduzimos todas as colunas no momento da criação da tabela, mas aqui no caso de números aleatórios. Uma coluna chamada 'Numbers' é criada. Esta função é uma função interna para gerar os números aleatórios e cada número da coluna de identificação. Para esse fim, usamos uma declaração específica, 'alter'. Que adicionará uma coluna na tabela, como mostrado abaixo na imagem tirada.
>> ALTER TABELA TBL1 Adicionar números de coluna Numérico padrão aleatório ();Da mesma forma, adicionamos mais algumas linhas à tabela. A tabela resultante é a seguinte.
Agora nesta tabela, aplicaremos a cláusula 'laços' com o fator “Fetch-primeiro”.
Se buscarmos as primeiras fileiras da tabela, o que geralmente acontece é que o PostGresql pausa trabalhando nos números de linha fixa quando chegarem os mesmos números. Para superar o problema, além de "laços", a cláusula "Ordem por" também é necessária porque, sem isso, o resultado será bastante aleatório. Agora aplique esta condição na mesa com uma consulta.
A parte 'Fetch First ”receberá todos os registros organizados em ordem crescente pela coluna de identificação. De acordo com o comando, as 5 primeiras linhas serão selecionadas.
Deslocamento com laços
Considere outra tabela chamada "Tecnologia". Aqui estamos interessados em aplicar cláusulas Fetch_first, laços e compensação em um único comando. Esses três combinaram e não prometeram retornar exatamente o mesmo número de linhas que você especificou na consulta.
>> selecione * da tecnologia;Aqui queremos especificar 2 linhas para buscar primeiro com um deslocamento de 3. Então, em primeiro lugar, todos os dados são organizados em ordem decrescente, então as três primeiras linhas são removidas; Portanto, recebemos as duas últimas linhas encomendadas pela coluna da tabela do modelo. A sintaxe simples é:
>> Selecione * FROM Nome da tabela Ordem por nome da coluna Desct Fetch First (n) linhas com deslocamento de laços (n);Limite com uma subconeração
Este é um exemplo de limitar o número de linhas usando um sub-quadro à tabela denominada trabalhador. Você pode aplicar todos os comandos a uma única tabela. Mas, para explicar restrições diferentes, precisamos ter uma variedade de criação de tabela, que ainda não está disponível em uma única tabela. Então, a tabela de trabalhador tem os seguintes atributos.
>> selecione * dos trabalhadores;Uma coisa que deve ser mantida em mente é usar a cláusula da Ordem por Somente com a Cláusula de Ties quando eles se combinam; Caso contrário, você precisar.
>> Selecione * de (Selecione * da Ordem do Trabalhador por City Desc Fetch das 4 primeiras linhas com laços) como Subq Order by City Desc, fnamePrimeiro, a porção da subestoria é resolvida.
Conclusão
'PostGresql Limit lines' é uma solução para ocultar alguns dados do usuário devido a alguns motivos especificados. Usando 'Offset', 'Order Cláusula' e 'laços' com o conceito Fetch-primeiro é discutido para reduzir a ambiguidade de combinar todos eles em uma única declaração. Espero que este conteúdo o ajude a manusear mesas com a cláusula de limite.