Amigos nuevamente acudo a ustedes a ver si me pueden ayudar a entender como funciona lo del limit y offset
Tengo la siguiente tabla CREATE TABLE movcab ( movagecod character varying(3) NOT NULL, -- Codigo de la agencia movdoc character varying(2) NOT NULL, -- Codigo del documento movnum character varying(7) NOT NULL, -- Numero del documento movfec date, -- Fecha del documento CONSTRAINT movcab_pk PRIMARY KEY (movagecod, movdoc, movnum), ) CREATE INDEX movcab_idx1 ON movcab USING btree (movfec); Tengo algunos estos registros en la tabla registros en la tabla Cuando hago un select * from movdoc where order by movfec desc me muestra esto movagecod movdoc movnum movfec 10 IN 5 04/08/2010 10 EG 1 01/08/2010 10 EG 2 01/08/2010 10 IN 2 30/07/2010 10 IN 3 30/07/2010 10 IN 4 30/07/2010 10 IN 1 29/07/2010 20 EG 1 29/07/2010 10 TR 1 28/07/2010 20 IN 1 28/07/2010 Entonces quiero solo ir obteniendo de uno en uno desde el mas reciente hasta el mas antiguo, para lo cual uso el limity offset Cuando hago un select * from movdoc where order by movfec desc limit 1 offset 0 Con esta consulta me retorne el documento IN numero 5 con esto select * from movdoc where order by movfec desc limit 1 offset 1 //me retorna el Eg numero 1 select * from movdoc where order by movfec desc limit 1 offset 3 me retorna el in numero 1 envez del in numero 2 que es el que me deberia retornar, y si sigo aumentando eloffset me da otros registros que no siguen el ordern que veo en la pantalla. A que de puede deber este inconveniente voy a dar de loco jeje, no se porque no me muestra en el orden que se ve en pantalla, algo quisa con el indice o las llaves primarias. He buscado informacion pero no encuentro nada que me de una pista de como funciona el offset para tratar de entender cual es el problema. Saludos