week una tipo obtener nombre mes hora fecha entre diferencia day dato datepart año sql sql-server datetime date

tipo - obtener mes y año de una fecha sql



¿Cómo obtengo solo la fecha cuando uso MSSQL GetDate()? (7)

Aquí tienes algunas soluciones;)

http://www.bennadel.com/blog/122-Getting-Only-the-Date-Part-of-a-Date-Time-Stamp-in-SQL-Server.htm

Esta pregunta ya tiene una respuesta aquí:

DELETE from Table WHERE Date > GETDATE();

GETDATE () incluye tiempo. En lugar de conseguir

2011-01-26 14:58:21.637

Como puedo conseguir:

2011-01-26 00:00:00.000


Es una base de datos específica. No ha especificado qué motor de base de datos está utilizando.

por ejemplo, en PostgreSQL haces cast (myvalue como date).


Ligero sesgo a SQL Server

Resumen

DATEADD(day, DATEDIFF(day, 0, GETDATE()), 0)

SQL Server 2008 tiene el tipo de date sin embargo. Entonces solo usa

CAST(GETDATE() AS DATE)

Editar: para agregar un día, compare con el día anterior a "cero"

DATEADD(day, DATEDIFF(day, -1, GETDATE()), 0)

De cyberkiwi:

Una alternativa que no involucra 2 funciones es (el +1 puede estar dentro o entre los corchetes).

DATEDIFF(DAY, 0, GETDATE() +1)

DateDiff devuelve un número, pero a todos los efectos esto funcionará como una fecha donde sea que pretenda usar esta expresión, excepto convertirla a VARCHAR directamente, en cuyo caso usted habría utilizado el enfoque CONVERTIR directamente en GETDATE (), por ejemplo

convert(varchar, GETDATE() +1, 102)


Para SQL Server 2008, la mejor manera de indexar es

DELETE from Table WHERE Date > CAST(GETDATE() as DATE);

Para las versiones anteriores de SQL Server, las matemáticas de fecha funcionarán más rápido que una conversión a varchar. Incluso la conversión a varchar puede darle un resultado incorrecto, debido a la configuración regional.

DELETE from Table WHERE Date > DATEDIFF(d, 0, GETDATE());

Nota: no es necesario ajustar el DATEDIFF con otro DATEADD


Puedes usar

DELETE from Table WHERE Date > CONVERT(VARCHAR, GETDATE(), 101);


CONVERT(varchar,GETDATE(),102)


SELECT CONVERT(DATETIME, CONVERT(varchar(10), GETDATE(), 101))