Quiero obtener solo el tiempo de la columna DateTime usando la consulta SQL con SQL Server 2005 y 2008 Salida predeterminada:
AttDate
==
2011-02-09 13:09:00
2011-02-09 14:10:00
Me gustaría esta salida:
AttDate Time
==
2011-02-09 13:09:00 13:09
2011-02-09 14:10:00 14:10
sql-server
tsql
sql-server-2005
datetime
Plantilla12
fuente
fuente
SELECT CONVERT(VARCHAR(8),GETDATE(),108)
para el servidor SQLRespuestas:
SQL Server 2008:
Versiones anteriores:
fuente
Asumiendo servidor SQL
SELECT CONVERT(VARCHAR(8),GETDATE(),108)
fuente
SQL Server 2008+ tiene un tipo de datos "tiempo"
Para versiones anteriores, sin conversiones varchar
fuente
0
representa la fecha mínima1900-01-01
. Entonces, esto obtiene el número (negativo) de días entre el valor de la columna y 0, luego agrega esos días negativos al valor de la columna que "pone a cero" la parte de la fecha1900-01-01
y solo le queda el tiempo.La forma más simple de obtener el tiempo desde datetime sin pila de milisegundos es:
fuente
Intenta usar esto
Fecha a hora
Time to TinyTime
fuente
Prueba esto:
fuente
Prueba esto, funcionará:
Para su referencia .
fuente
select AttDate,convert(char(5), AttDate, 108) [Time] from yourTableName
fuente
Sería una buena cláusula. Por ejemplo:
fuente
A menudo uso este script para obtener Time from DateTime:
fuente
Para obtener el tiempo de datetime, podemos usar
fuente
Si quieres salir con algo de este estilo: 23 de octubre de 2013 10:30 a.m.
Utilizar este
convert()
El método toma 3 parámetrosfuente
Obtener fecha del servidor
o
Si está almacenado en la tabla
Resultado:
fuente
fuente
en MSSQL2012 o superior
...o...
fuente
SQL Server 2012:
Personalmente, prefiero TRY_CONVERT () a CONVERT (). La principal diferencia: si falla la conversión, TRY_CONVERT () devuelve NULL mientras que CONVERT () genera un error.
fuente
select substr(to_char(colUmn_name, 'DD/MM/RRRR HH:MM:SS'),11,19) from table_name;
Salida: desde
fuente
'to_char' is not a recognized built-in function name.