100% encontró este documento útil (1 voto)
1K vistas3 páginas

Trucos SQL

Este documento proporciona información sobre funciones SQL para manipular fechas, incluidas funciones para quitar la hora de una fecha, obtener partes de fechas como el año o el mes, calcular diferencias entre fechas, y modificar fechas agregando o restando días u otras unidades. También incluye ejemplos de consultas SQL que usan funciones de fecha para filtrar registros por rango de fechas o realizar subconsultas.

Cargado por

angel.acena
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX o lee en línea desde Scribd
100% encontró este documento útil (1 voto)
1K vistas3 páginas

Trucos SQL

Este documento proporciona información sobre funciones SQL para manipular fechas, incluidas funciones para quitar la hora de una fecha, obtener partes de fechas como el año o el mes, calcular diferencias entre fechas, y modificar fechas agregando o restando días u otras unidades. También incluye ejemplos de consultas SQL que usan funciones de fecha para filtrar registros por rango de fechas o realizar subconsultas.

Cargado por

angel.acena
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX o lee en línea desde Scribd
Está en la página 1/ 3

Fechas SQL

Quitarle la hora a una fecha (ponerla a 00:00:0)


select convert(DATETIME,convert(VARCHAR,Fecha,112),112) AS Fecha from log

Quitarle la hora a una fecha


CONVERT(nvarchar(10),CreacionFecha,101)

Modificar una fecha:

Puede añadirse o quitarse días, horas, minutos, años, etc:

DATEADD(day,1,fecha)

datepart Abreviaturas

year yy, yyyy

quarter qq, q

month mm, m

dayofyear dy, y

day dd, d

week wk, ww

weekday dw, w

hour hh

minute mi, n

second ss, s

millisecond ms

microsecond mcs

nanosecond ns
Funciones que obtienen partes de la fecha y hora

Tipo de datos
Función Sintaxis Valor devuelto devuelto Determinismo

DATENAME DATENAME ( datepart , Devuelve una cadena de caracteres que representa el datepart especificado de la nvarchar No determinista
date ) fecha especificada.

DATEPART DATEPART ( datepart , Devuelve un entero que representa el datepart especificado del date especificado. int No determinista
date )

DAY DAY ( date ) Devuelve un entero que representa la parte del día de date especificado. int Determinista

MONTH MONTH ( date ) Devuelve un entero que representa la parte del mes de un date especificado. int Determinista

YEAR YEAR ( date ) Devuelve un entero que representa la parte del año de un date especificado. int Determinista

Funciones que obtienen diferencias de fecha y hora

Tipo de datos
Función Sintaxis Valor devuelto devuelto Determinismo

DATEDIFF DATEDIFF ( datepart , startdate , Devuelve el número de límites datepart de fecha y hora entre dos fechas int Determinista
enddate ) especificadas.

Funciones que modifican valores de fecha y hora

Función Sintaxis Valor devuelto Tipo de datos devuelto Determinismo

DATEADD DATEADD (datepart , Devuelve un nuevo valor datetime agregando un intervalo al El tipo de datos del argumento Determinista
number , date ) datepart especificado del dateespecificado. date.

SWITCHOFFSET SWITCHOFFSET SWITCH OFFSET cambia el ajuste de zona horaria de un valor datetimeoffset con la precisión Determinista
(DATETIMEOFFSET , DATETIMEOFFSET y conserva el valor UTC. fraccionaria de DATETIMEOFFSET
time_zone)

TODATETIMEOFFSET TODATETIMEOFFSET TODATETIMEOFFSET transforma un valor datetime2 en un valor datetimeoffset con la precisión Determinista
(expression , time_zone) datetimeoffset. El valor datetime2 se interpreta en la hora local fraccionaria del argumento
para el valor time_zone especificado. datetime

Ejemplos de consultas de SQL con fechas:


Sql=”SELECT CONVERT(nvarchar(10),CreacionFecha,101) As Fecha
sql=sql& "FROM Billete "
sql=sql& "WHERE (CreacionFecha >= CONVERT(DATETIME,'"
sql=sql & Format(CDate(txtDesde.Text), "yyyy/MM/dd") & " 00:00:00', 102)) "
sql=sql & "AND (CreacionFecha <= CONVERT(DATETIME,'"
sql=sql & Format(CDate(txtHasta.Text), "yyyy/MM/dd") & " 00:00:00', 102)) AND "
sql=sql & "(Cancelado = 0) AND (Cliente=" & txtCliente.Text
sql=sql & ") ORDER BY CreacionFecha,NumeroBillete "

Mostrar intervalo del mes actual:

txtHasta.Text = Format(Now, "d/M/yyyy")


txtDesde.Text = Format(DateSerial(Year(Now), Month(Now), 1), "d/M/yyyy")

SUBCONSULTAS:
SELECT B.Cliente,B.NumeroBillete,B.Localizador,B.CreacionFecha,B.Titular,P.Contacto, P.Comentario
FROM Billete As B JOIN
(SELECT PNR.Localizador,PNR.Contacto,PNR.Comentario From
PNR JOIN
(SELECT Localizador, Max(Version) As version
from PNR
WHERE Localizador=ANY (
SELECT Localizador
FROM Billete
WHERE Cliente=3225 and CreacionFecha >= CONVERT(DATETIME,'2009/02/17 00:00:00', 102)
)
GROUP BY Localizador) V
ON PNR.Localizador=V.Localizador And PNR.Version=V.Version)P
ON B.Localizador=P.Localizador
ORDER BY B.Cliente,B.CreacionFecha

También podría gustarte