Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Cantidad de Registros... (https://www.clubdelphi.com/foros/showthread.php?t=56793)

Jose Roman 27-05-2008 20:15:46

Cantidad de Registros...
 
Hola a todos...He visto que se puede realizar que una consulta SQL devuelva cierta cantidad de registros, mi pregunta es que debo hacer para que mi consulta realizada con devuelva 5 registros solamente, utilizo Firebird y MDO con Delphi 7.Gracias.

Delphius 27-05-2008 20:22:52

Hola Jose Roman,
A tu SQL debes añadir la clásula FIRST seguida del número.

Código SQL [-]
select first 5....

Saludos,

BlueSteel 27-05-2008 20:25:52

Cita:

Empezado por Jose Roman (Mensaje 289440)
Hola a todos...He visto que se puede realizar que una consulta SQL devuelva cierta cantidad de registros, mi pregunta es que debo hacer para que mi consulta realizada con devuelva 5 registros solamente, utilizo Firebird y MDO con Delphi 7.Gracias.


Hola

me parece que puedes usar el Top 5 (o la cantidad que quieras..)..

Código SQL [-]
Select Top 5 * From Tabla

Si miras al final de este hilo encontraras que han tratado el tema.. no se como seria para Firebird...

por ahi aparece un

Código SQL [-]
Select first 100 * from TAbla
Salu2:p:D

peccatum 07-08-2008 03:04:35

Hola


Firebird 2.1 y no puedo hacer algo sencillo como la siguiente consulta:

Código SQL [-]
select first 5 *
from individuos

"Token unknown - line 1, char 13.
5."


Será que hay que instalar algún set de UDF´s donde esta definida la función first? ... por que no funcionará =(

edit:

si funciona de esta manera:

Código SQL [-]
select  *
from individuos
rows 5

Casimiro Notevi 07-08-2008 08:58:32

Según Firebird 2.1 Release Notes:


Cita:

ROWS Syntax
D. Yemanov
ROWS syntax is used to limit the number of rows retrieved from a select expression. For an uppermost-level
select statement, it would specify the number of rows to be returned to the host program. A more understandable
alternative to the FIRST/SKIP clauses, the ROWS syntax accords with the latest SQL standard and brings some
extra benefits. It can be used in unions, any kind of subquery and in UPDATE or DELETE statements.
It is available in both DSQL and PSQL.
Syntax Pattern
SELECT ...
[ORDER BY <expr_list>]
ROWS <expr1> [TO <expr2>]
Examples
1.
SELECT * FROM T1
UNION ALL
SELECT * FROM T2
ORDER BY COL
ROWS 10 TO 100
2.
SELECT COL1, COL2,
( SELECT COL3 FROM T3 ORDER BY COL4 DESC ROWS 1 )
FROM T4
3.
DELETE FROM T5
ORDER BY COL5
ROWS 1
Points to Note
1. When <expr2> is omitted, then ROWS <expr1> is semantically equivalent to FIRST <expr1>. When both
<expr1> and <expr2> are used, then ROWS <expr1> TO <expr2> means the same as FIRST (<expr2>
- <expr1> + 1) SKIP (<expr1> - 1)
2. There is nothing that is semantically equivalent to a SKIP clause used without a FIRST clause.


hecospina 08-08-2008 02:01:56

Hola
La respuesta que te dio Delphis funciona correctamente en firebird
seria algo asi
Código SQL [-]
Select first (5) codigo from tabla

La opcion Top no me ha funcionada en firebird

Adicional si deseas omitir un numero de registros podrias hacerlo asi
Código SQL [-]
Select first (5) skip (10) codigo from tabla

Lo que hace es tomar 5 registros omitiendo los 10m primeros

En el releace notes que se instalan con firebird encontrarar muchas cosas utiles:)

Casimiro Notevi 08-08-2008 08:24:15

Cita:

Empezado por hecospina (Mensaje 306465)
Hola
La respuesta que te dio Delphis funciona correctamente en firebird
seria algo asi:
Select first (5) codigo from tabla

La opcion Top no me ha funcionada en firebird

Adicional si deseas omitir un numero de registros podrias hacerlo asi:
Select first (5) skip (10) codigo from tabla

Lo que hace es tomar 5 registros omitiendo los 10m primeros

En el releace notes que se instalan con firebird encontrarar muchas cosas utiles:)

Sólo comentar que los paréntesis rodeando los números no son necesarios, al menos en la versión 1.5


La franja horaria es GMT +2. Ahora son las 16:03:23.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi