transponer registros pasar multiple filas ejemplo columns columnas 10g sql date time sql-server-2008-r2

sql - registros - Identifique filas donde la diferencia de tiempo entre dos columnas exceda 4 horas



sql transponer columnas a filas (2)

Deberá CONVERT sus columnas en un valor DATETIME y hacer un DATEDIFF() en ellas.

Realmente debería almacenar sus valores como sus tipos de datos apropiados, ya que esto no es SARGable en absoluto.

Select * From GXHEAD Where DateDiff(Hour, Convert(DateTime, PRECISETIME, 103), Convert(DateTime, DEVALERT, 103)) >= 4

Tengo dos columnas en mi mesa llamadas GXHEAD. hay PRECISETIME y DEVALERT.

Tanto PRECISETIME como DEVALERT mantienen el tiempo como varchar (255) y tienen el formato "DD / MM / AAAA HH: MM: SS" (p. Ej .: "20/03/2014 14:07:11").

Me gustaría identificar todas las filas donde DEVALERT exceda PRECISETIME en 4 horas.


Puedes intentar esto:

DATEDIFF(Hour, Cast(PRECISETIME as DATETIME), Cast(DEVALERTas DATETIME)) > 4

También tenga en cuenta que es una mala práctica almacenar fechas como varchar (). Siempre debes evitar eso.

Intenta configurar esto:

set dateformat dmy