Cuando selecciono la fecha en SQL, se devuelve como 2011-02-25 21:17:33.933
. Pero solo necesito la parte Fecha, es decir 2011-02-25
. ¿Cómo puedo hacer esto?
sql
sql-server
sql-server-2005
Neeraj
fuente
fuente
Respuestas:
Supongo que quiere una cuerda.
120 dice aquí la función de conversión que se pasa la fecha de entrada en el siguiente formato :
yyyy-mm-dd hh:mi:ss
.fuente
Para SQL Server 2008:
Consulte https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql
fuente
DATE
es nuevo en 2008.date
tipo de datos, por lo que esta solución no es válida.El más rápido es
datediff
, p. Ej.Pero si solo necesita usar el valor, puede omitir el dateadd, por ejemplo
donde la expresión
datediff(d, 0, getdate())
es suficiente para devolver la fecha de hoy sin porción de tiempo.fuente
Use CAST (GETDATE () como fecha) que funcionó para mí, simple.
fuente
CAST(order_date AS DATE)
http://www.bennadel.com/blog/122-Getting-Only-the-Date-Part-of-a-Date-Time-Stamp-in-SQL-Server.htm
fuente
puedes usar así
fuente
Para la versión anterior de 2008 :
SELECT DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0)
fuente
Es un poco tarde, pero use la función ODBC "curdate" (el ángulo de paréntesis 'fn' es la secuencia de escape de la función ODBC).
Salida:
2013-02-01
fuente
SELECT {fn curdate()} FROM (SELECT 1) AS T(X)
y observa el plan de ejecución real (versión xml), verá que lo que realmente se ejecuta esCONVERT(varchar(10),getdate(),23)
. Entonces, el tipo de datos de esta función ODBC es lovarchar(10)
que significa que si desea comparar el resultado con undatetime
obtendrá una conversión implícita devarchar(10)
adatetime
en una cadenayyyy-mm-dd
. Esa conversión implícita fallará conset dateformat dmy
.Puedes probar este también.
fuente
Convierta de nuevo a fecha y hora después de convertir a fecha para mantener la misma hora de datos si es necesario
fuente
En caso de que necesite tiempo para ser ceros como
2018-01-17 00:00:00.000
:SELECT CONVERT(DATETIME, CONVERT(DATE, GETDATE()), 121)
fuente
El uso es simple:
Ejemplo a continuación:
Mesa:
fuente
Es demasiado tarde pero seguir me funcionó bien
Cuando el tipo de datos es fecha, las horas se truncarían
fuente
En PLSQL puedes usar
fuente
Primero
ROUND
convierta la fecha a flotante (que muestra el numérico), luego el numérico a 0 puntos decimales, luego conviértalo a datetime.fuente
Si desea devolver un tipo de fecha como solo una fecha, use
o
o
fuente
Prueba esto.
fuente