Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Mostrar los últimos 100 registros (https://www.clubdelphi.com/foros/showthread.php?t=32804)

dade 16-06-2006 18:03:42

Mostrar los últimos 100 registros
 
Como tengo que hacerlo para visualizar los últimos 100 registros de una tabla, ordenados de forma ascendente. Es decir, de esta forma me muestra los últimos 100 registros pero el primero es el id más alto y yo quiero que el primero sea el id más bajo.

SELECT TOP(100) *
FROM principal
ORDER BY id DESC

Alguna idea ?

vtdeleon 16-06-2006 23:29:58

Que base de datos usaas??

Con algunas base de datos se puede hacer:
Código SQL [-]
Select *
from (SELECT TOP(100) *
        FROM principal
        ORDER BY id DESC)
order by asc

HEXTOR123 18-10-2006 18:35:23

Aqui expongo una solucion:

CREATE PROCEDURE UspUltimosRegistros
@Reg int --Cantidad de registros a mostrar
AS
DECLARE @CAD1 AS VARCHAR(5), @CAD2 AS VARCHAR(200)
SET @CAD1=(SELECT COUNT(ID)FROM TABLA)-@Reg
SET @CAD2='select * from TABLA where ID NOT IN (select top '+@CAD1+ ' ID from TABLA)'
EXECUTE(@CAD2)
GO

EXEC UspUltimosRegistros 10

aldmoscardi 19-10-2006 03:57:00

respuesta a tu consulta de TOP()
 
Hola, el tema esta que cuando usas las funciones TOP, SUM, etc, debes incluir un GROUP BY, prova de hacer eso y solucionara tu problema, qudaria mas o menos asi

Select *
from (SELECT TOP(100) *
FROM principal
GROUO BY CRITERIO
ORDER BY ID)

vtdeleon 19-10-2006 04:22:45

Solo como nota he de decir que no toda base de datos soporta ese tipo de consulta.

Saludos


La franja horaria es GMT +2. Ahora son las 07:36:54.

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