tutorial transact switch stored examples ejemplos sql sql-server tsql

transact - Registros inferiores seleccionados de SQL



transact sql pdf (2)

¿Por qué no usar una subconsulta?

SELECT T1.* FROM (SELECT TOP X Id, Title, Comments, CreatedDate FROM MyTable WHERE CreatedDate > @OlderThanDate ORDER BY CreatedDate) T1 ORDER BY CreatedDate DESC

Tengo una consulta en la que deseo recuperar los registros X más antiguos. En la actualidad mi consulta es algo como lo siguiente:

SELECT Id, Title, Comments, CreatedDate FROM MyTable WHERE CreatedDate > @OlderThanDate ORDER BY CreatedDate DESC

Sé que normalmente eliminaría la palabra clave ''DESC'' para cambiar el orden de los registros, sin embargo, en este caso, aún quiero obtener primero los registros ordenados con el elemento más nuevo.

Por lo tanto, quiero saber si hay algún medio para realizar esta consulta, de modo que obtenga los elementos X más antiguos ordenados de modo que el elemento más nuevo sea el primero. También debería agregar que mi base de datos existe en SQL Server 2005.


Incrustar la consulta Toma la parte superior x cuando está ordenada en orden ascendente (es decir, la más antigua) y luego vuelve a ordenarlas en orden descendente ...

select * from ( SELECT top X Id, Title, Comments, CreatedDate FROM MyTable WHERE CreatedDate > @OlderThanDate ORDER BY CreatedDate ) a order by createddate desc