Qual é a palavra-chave LIMIT?
A palavra-chave limit é usada para limitar o número de linhas retornadas em um resultado de consulta.
Pode ser usado em conjunto com a sintaxe da palavra-chave dos comandos SELECT, UPDATE OU DELETE LIMIT
A sintaxe da palavra-chave LIMIT é a seguinte
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N;
AQUI
- "SELECT {fieldname (s) | *} FROM tableName (s)" é a instrução SELECT que contém os campos que gostaríamos de retornar em nossa consulta.
- "[Condição WHERE]" é opcional, mas quando fornecido, pode ser usado para especificar um filtro no conjunto de resultados.
- "LIMIT N" é a palavra-chave e N é qualquer número começando em 0, colocando 0 como o limite não retorna nenhum registro na consulta. Colocar um número, digamos 5, retornará cinco registros. Se os registros na tabela especificada forem menores que N, todos os registros da tabela consultada serão retornados no conjunto de resultados.
Vejamos um exemplo -
SELECT * FROM members LIMIT 2;
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Como você pode ver na imagem acima, apenas dois membros foram devolvidos.
Obtendo uma lista de dez (10) membros apenas do banco de dados
Vamos supor que desejamos obter uma lista dos primeiros 10 membros registrados do banco de dados Myflix. Usaríamos o seguinte script para conseguir isso.
SELECT * FROM members LIMIT 10;
Executar o script acima nos dá os resultados mostrados abaixo
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
4 | Gloria Williams | Female | 14-02-1984 | NULL | 2nd Street 23 | NULL | NULL | NULL | NULL |
5 | Leonard Hofstadter | Male | NULL | NULL | Woodcrest | NULL | 845738767 | NULL | NULL |
6 | Sheldon Cooper | Male | NULL | NULL | Woodcrest | NULL | 976736763 | NULL | NULL |
7 | Rajesh Koothrappali | Male | NULL | NULL | Woodcrest | NULL | 938867763 | NULL | NULL |
8 | Leslie Winkle | Male | 14-02-1984 | NULL | Woodcrest | NULL | 987636553 | NULL | NULL |
9 | Howard Wolowitz | Male | 24-08-1981 | NULL | SouthPark | P.O. Box 4563 | 987786553 | lwolowitz[at]email.me | NULL |
Observe que apenas 9 membros foram retornados em nossa consulta, pois N na cláusula LIMIT é maior que o número total de registros em nossa tabela.
Reescrevendo o script acima como segue
SELECT * FROM members LIMIT 9;
Retorna apenas 9 linhas em nosso conjunto de resultados da consulta.
Usando OFF SET na consulta LIMIT
O valor OFF SET também é mais frequentemente usado junto com a palavra-chave LIMIT. O valor OFF SET nos permite especificar qual linha iniciar a partir da recuperação de dados
Vamos supor que queremos um número limitado de membros começando do meio das linhas, podemos usar a palavra-chave LIMIT junto com o valor de deslocamento para conseguir isso. O script mostrado abaixo obtém dados começando na segunda linha e limita os resultados a 2.
SELECT * FROM `members` LIMIT 1, 2;
A execução do script acima no ambiente de trabalho MySQL no myflixdb fornece os seguintes resultados.
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Quando devemos usar a palavra-chave LIMIT?
Vamos supor que estejamos desenvolvendo o aplicativo que roda em cima do myflixdb. Nosso designer de sistema nos pediu para limitar o número de registros exibidos em uma página para, digamos, 20 registros por página para conter o tempo de carregamento lento. Como vamos implementar o sistema que atenda a esses requisitos do usuário? A palavra-chave LIMIT é útil em tais situações. Poderíamos limitar os resultados retornados de uma consulta a 20 registros apenas por página.
Resumo
- A palavra-chave LIMIT de é usada para limitar o número de linhas retornadas de um conjunto de resultados.
- O número LIMIT pode ser qualquer número de zero (0) indo para cima. Quando zero (0) é especificado como o limite, nenhuma linha é retornada do conjunto de resultados.
- O valor OFF SET nos permite especificar qual linha iniciar a partir da recuperação de dados
- Pode ser usado em conjunto com a sintaxe da palavra-chave dos comandos SELECT, UPDATE OU DELETE LIMIT