[firebase-br] Selecionar registros

Sandro Souza escovadordebits em gmail.com
Qui Set 17 09:21:22 -03 2009


Bom dia/tarde Humberto.

Grande Humberto, para essa situação existem os operadores opcionais FIRST e
SKIP, ou seja, com eles nós conseguimos "paginar" conjuntos de registros
conforme sejam as nossas necessidades.

Uso muito esse recurso no novo site que estou fazendo em PHP, para exibir
páginas de N em N registros, independente de como sejam as condições do
SELECT e de sua respectiva ordenação.

A sintaxe básica é a seguinte:

SELECT [FIRST <quantidade-máxima-de-registros> [SKIP
<quantidade-inicial-de-registros-a-serem-ignorados>]] ..... FROM ......;

Por exemplo, vamos supor que exista uma tabela de clientes chamada
"CLIENTES", e entre os vários campos, existam os campos "CODIGO" e
"RAZAO_SOCIAL", e você deseje obter os primeiros 10 registros de clientes,
ordenados pela razão social:

SELECT FIRST 10 * FROM CLIENTES ORDER BY RAZAO_SOCIAL;

Agora você quer saltar os primeiros 10 registros e obter os próximos 10:

SELECT FIRST 10 SKIP 10 * FROM CLIENTES ORDER BY RAZAO_SOCIAL;

Agora você quer saltar os primeiros 20 registros e obter os próximos 10:

SELECT FIRST 10 SKIP 20 * FROM CLIENTES ORDER BY RAZAO_SOCIAL;

Como você pode ver, a lógica é bem simples, basta apenas conhecer esses
operadores de paginação.

No seu caso, como você deseja trazer 1 registro por vez, pode utilizar da
seguinte forma:

SELECT FIRST 1 * FROM MINHATABELA WHERE ....... ORDER BY .......;

Para obter apenas o segundo registro, pode usar:

SELECT FIRST 1 SKIP 1 * FROM MINHATABELA WHERE ....... ORDER BY .......;

Para obter apenas o terceiro registro, pode usar:

SELECT FIRST 1 SKIP 2 * FROM MINHATABELA WHERE ....... ORDER BY .......;

E assim por diante.

Espero ter ajudado mais que atrapalhado. :D

2009/9/16 Humberto Araujo <humberto701 em gmail.com>

> Como selecionar o proximo registro de uma tabela trazendo apenas de 1 em 1?
> ou seja..
>
> vamos buscar 1 registro apenas.. ao clicar no botao proximo ele busca
> apenas
> o proximo registro e traz..
>
> aguardo resposta...
>
> --
> Sds.
>
> Humberto Filho
>
> (88) 8825-4164
> (88) 9275-0052
> (88) 3523-8885
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista