Saludos
El otro dia desarrollando un sistema se me planteo lo siguiente en la base de datos en este caso SQL Server.
Obtener el valor del maximo registro en una seleccion de los primeros 20 registro por ejemplo de una tabla.
el escript de prueba es el siguiente ambos dan el mismo resultado.
Script 01 : Tiene mayor coste en recursos
SELECT MAX(codi_usu) FROM seg_usuario
WHERE codi_usu IN (
SELECT TOP 20 codi_usu
FROM seg_usuario
ORDER BY codi_usu ASC
)
Script 02 : Tiene menor coste en recursos
--obtiene el maximo valor de los primeros 20 registros
DECLARE @max INT
SET SELECT @max=MAX(CODI_USU)
FROM (
SELECT TOP 20 codi_usu
FROM seg_usuario
ORDER BY codi_usu
)
AS usuarios
PRINT @max
Intenta utilizar funciones, es mas rápido y lo mejor de todo reutilizable. :D
ResponderEliminar