MSSQL para SAP BO

Fechas en SQL Server – SQL Date Functions

3MC SqlQuery TresEmeConsulting

Trabajar con fechas en SQL Server es algo imprescindible en bases de datos y SQL, por suerte en SQL Server tenemos multitud de funciones para acceder y manipularlas. Vamos a dar un breve repaso sobre las más habituales y tenerlo a modo de cheatsheet.

1. GETDATE () – La función más utilizada y esencial trabajando con fechas en SQL Server
Ejemplo – Obtener la fecha y hora actual

SELECT GETDATE() -> 2012-11-21 10:55:25.132.

2. DATEADD (datepart, number, date) – Nos permite añadir o quitar valor a una fecha.
Ejemplo – Añadir 30 días a la fecha actual

SELECT DATEADD(DAY, 30, GETDATE()) -> 2012-12-21 10:55:25.132.

3. DATEDIFF (datepart, startdate, enddate) – Devuelve el numero de días entre dos fechas.
Ejemplo – Días entre hoy y el 1 de enero de 2012

SELECT DATEDIFF(DAY, '01/01/2012', GETDATE())

4. DATEPART (datepart, date) – Devuelve el número que representa una porción de una fecha. Extra todas las partes de la fecha años(YEAR), meses(MONTH), dias(DAY), horas (HOUR), minutos(MINUTE), segundos(SECOND) y milisegundos(MILLISECOND).
Ejemplo – Devuelve el mes de la fecha actual

SELECT DATEPART(MONTH, GETDATE())

5. DATENAME (datepart, date) – Devuelve el nombre de una parte de la fecha.
Ejemplo – Recuperamos el nombre del mes de la fecha actual.

SELECT DATENAME(MONTH, GETDATE())

6. ISDATE (expression) – Esta función comprueba si una fecha es válida devolviendo 1 (true) o es inválida devolviendo 0 (false).
Ejemplo – Este ejemplo devolvería un 0 (false)

SELECT ISDATE ('03/34/12')

7. DAY(date), MONTH(date), YEAR(date) – Estas funciones son similares a DATEPART pero más fáciles para trabajar con ellas.
Ejemplo – Recuperamos un entero representando las fechas dadas. En este caso 1,1,1900

SELECT MONTH(0), DAY(0), YEAR(0)


Shares: