SQL - Como elimino reg. dejando la fecha mas actualizada

 
Vista:

Como elimino reg. dejando la fecha mas actualizada

Publicado por Rodolfo (3 intervenciones) el 13/01/2003 20:35:52
Como elimino reg. dejando la fecha mas actualizada que viene en el campo fecha de una tabla con mas de 650.000 reg, (tambien existen ID repetidos)y solo debo dejar la fecha mas actualizada del registro.
Se debe manejar una tabla temporal o se puede hacer en la misma tabla , eliminando los reg con la fecha mas antigua que la ultima. como seria la instruccion para esta ultima.
Gracias por su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como elimino reg. dejando la fecha mas actualiz

Publicado por Isaías Islas (5072 intervenciones) el 13/01/2003 21:20:03
Pues intentare darle una ayuda, sin mas conocimiento que el que proporciona.

-- Primero saque la fecha mas reciente:
DECLARE @MyFecha datetime
SELECT @MyFecha = SELECT MAX(MyColFecha) FROM MyTablaOrigen

-- Inserte los registros en su tabla temporal
SELECT * INTO MyTablaTemp FROM MyTablaOrigen WHERE CONVERT(CHAR(10),MyColFecha, 120) = CONVERT(CHAR(10), @MyFecha, 120)

-- Elimine los registros de su tabla Origen
TRUNCATE TABLE MyTablaOrigen
-- Inserte los registros respaldados previamente
INSERT INTO MyTablaOrigen
SELECT * FROM MyTablaTemp

-- Elimine su tabla de paso
IF (SELECT COUNT(MyColFecha) FROM MyTablaOrigen) = (SELECT COUNT(MyColFecha FROM MyTablaTemp)
DROP TABLE MyTablaTemp

*** Cuidado ***
MANTENGA UN RESPALDO DE SU TABLAORIGEN antes de realizar esta operación.

Saludos.


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar