Reemplazar LAST en sql server

Tengo una tabla llamada HORAS con los campos (id, codigo, hora_inicial, hora_final, descuento, descuento_co, tiempo_total)
Realize esta consulta en access
SELECT codigo, last(fecha) AS fe, last(hora_inicial) AS HI, last(hora_final) AS HF,last(descuento) AS dcto, last(descuento_co) AS dcto_co, last(tiempo_total) AS TT
FROM HORAS
GROUP BY codigo
ORDER BY codigo
Esta misma consulta la quiero en sql server, pero me saca error debido a que el comando last no existe en sql server; podría reemplazar ese last por otro que no sea max, la consulta consiste en traer el ultimo registro que se ingreso de cada código, ya que no siempre el ultimo registro tiene los valores máximos.
Respuesta
1
El código para saber cual es el ultimo registro insertado en una tabla es:
SELECT CURRENT_IDENT('HORAS');
Este devuelve el ultimo ID insertado, ojo, esto es siempre y cuando tu ID haya sido declarado como una identidad esto es en tu tabla
CREATE HORAS(ID int identity(1,1) ...
Que es lo mismo que un campo autonumérico
Otro seria:
Select top 1 * from horas order by id desc...
Aunque yo siempre uso el CURRENT_IDENT
Saludos y espero haber sido de ayuda

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas