Devuelve una cadena de caracteres que representa el valor de la unidad especificada de una fecha especificada.
DATENAME(unidad, fecha)
Unidad puede tomar los mismos valores que en la función DATEPART
Cuando la unidad corresponde a mes o día de la semana, devuelve el valor en letras.
Ejemplos:
SELECT 'dd',DATENAME(dd, '20/10/2008') devuelve 20
SELECT 'mm',DATENAME(mm, '20/10/2008') devuelve Octubre
SELECT 'yy',DATENAME(yy, '20/10/2008') devuelve 2008
SELECT 'dw',DATENAME(dw, '20/10/2008') devuelve Lunes
Devuelve un valor datetime nuevo que resulta de sumar un intervalo de tiempo a una fecha especificada.
DATEADD(intervalo, número, fecha)
“Añade a la fecha número intervalos”.
Valores válidos para intervalo:
| Intervalo | Abreviaturas | Significado |
|---|---|---|
| year | yy, yyyy | año |
| quarter | qq, q | cuatrimestre |
| month | mm, m | mes |
| dayofyear | dy, y | nº día del año |
| day | dd, d | día |
| week | wk, ww | semana |
| weekday | dw, w | día de la semana |
| hour | hh | hora |
| minute | mi, n | minuto |
| second | ss, s | segundo |
| millisecond | ms | milisegundo |
Si número no es entero, se descarta la parte decimal.
Cuando intervalo es month, el número de días del mes afecta al resultado.
Por ejemplo,
SELECT DATEADD(month, 1, '08/30/2006')
SELECT DATEADD(month, 1, '08/31/2006')
Las dos instrucciones siguientes devuelven 2006-09-30 00:00:00.000.
Agosto tiene 31 días y septiembre tiene 30 días, al agregar un mes al final de agosto, se devuelve el último día de septiembre.
Devuelve el número de intervalos que hay entre las dos fechas especificadas.
DATEDIFF( intervalo , fechainicial , fechafinal )
Se resta fechainicial de fechafinal. Para expresar el tipo de intervalo se utilizan los mismos valores que en la función DATEADD.
El valor devuelto es de tipo entero por lo que si el resultado es un número mayor que el máximo entero, la función da error. Para los milisegundos, el número máximo es de 24 días, 20 horas, 31 minutos y 23.647 segundos. Para los segundos, el número máximo es 68 años.
Por ejemplo:
SELECT DATEDIFF(year, contrato, getdate()) AS [Años trabajados]
FROM empleados;
Nos devuelve la diferencia de años existentes entre la fecha de hoy (GETDATE()) y la fecha de contrato del empleado.
Devuelve el primer día de la semana establecido con SET DATEFIRST.
Establece el primer día de la semana en un número del 1 al 7.
SET DATEFIRST número
Se puede utilizar la función @@DATEFIRST para ver el valor actual de SET DATEFIRST.
La opción SET DATEFIRST se establece en tiempo de ejecución.
Número es un entero que indica el primer día de la semana. Puede ser uno de los siguientes valores.
| número | Primer día de la semana |
|---|---|
| 1 | Lunes |
| 2 | Martes |
| 3 | Miércoles |
| 4 | Jueves |
| 5 | Viernes |
| 6 | Sábado |
| 7 | Domingo |
Síguenos en: Facebook Sobre aulaClic Política de Cookies
© aulaClic. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.