16 julio de 2008
Estaba realizando una consulta en T-SQL para mostrar el número de pedidos realizados por día entre dos fechas. Algo relativamente simple, ¿verdad?

Pues aunque parezca increíble, SQL Server no proporciona una función sencilla que permita obtener únicamente la fecha de un campo de tipo DateTime ignorando la hora almacenada. En el caso del informe que quería realizar, me impedía agrupar correctamente los pedidos por fecha porque el campo DateTime también almacena la hora.

Afortunadamente, Anatoly Lubarsky nos proporciona una solución bastante sencilla.
SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, CAMPO_FECHA))
Donde CAMPO_FECHA es el nombre del campo de la tabla que contiene la fecha que quieres procesar. También puedes utilizar GETDATE() en vez de CAMPO_FECHA para obtener únicamente la fecha de hoy.

Esta es la consulta SQL resultante:

SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, DateCreated)) as OrderDate, 
COUNT(*) as OrdersCount FROM CommerceOrders
GROUP BY DATEADD(dd, 0, DATEDIFF(dd, 0, DateCreated))
ORDER BY OrderDate
Vuestros comentarios son bienvenidos.
Escribe:   Richard Chamorro
Etiquetas:
14 comentarios
1
José Manuel
sábado, 02 de agosto de 2008 1:11:06
El otro dia me encontré con este problema en un formulario de VB.NET. Voy a probarlo.
Gracias.
2
amendoza OTRA OPCIÓN
viernes, 08 de agosto de 2008 21:27:19
LES DEJO ESTE APORTE SEÑORES

--COMO CAMPO
SET DATEFORMAT DMY
SELECT TOP 1 Convert(Char(10), FECHA_TRAN , 101)FROM BITACORA

--EN UNA CONDICIÓN
SELECT * FROM BITACORA WHERE Convert(Char(10), FECHA_TRAN , 101) = '07/08/2008'

DONDE FECHA_TRAN PUEDE SER EL NOMBRE DEL CAMPO QUE UDS QUIERAN UTILIZAR. SALUDOS Y BENDICIONES XD
3
Alejandro
lunes, 29 de diciembre de 2008 13:27:46
Muchisimas Gracias.. desde Argentina..

Saludos!
4
amendoza
lunes, 29 de diciembre de 2008 13:28:50
Alejandro de Argentina!!

Muchisimas Gracias, me sirvio mucho..

Saludos!
5
JL GRACIAS!!!
lunes, 09 de febrero de 2009 2:55:20
Gracias a vos ya pude hacer mi tarea. TANKS
6
Espiax Gracias!!
viernes, 24 de julio de 2009 23:44:07
Buen Aporte, Gracias :)
7
ALexbmiyanlsd MUCHAS GRACIAS
viernes, 23 de octubre de 2009 17:56:08
Gracias amendoza me sirvio de mucho eh!!!
8
FULVS EXCELENTE GRACIAS
lunes, 14 de diciembre de 2009 4:09:02
GRACIAS POR LA SOLUCION, NUNCA SE ME OCURRIO DICHA FUNCION
9
Elvis Agradecimiento
martes, 02 de febrero de 2010 19:02:47
gracias por la ayuda
10
Dani Comentar
jueves, 13 de octubre de 2011 22:21:33
No me funciono pero igual gracias por el aporte, saludos
1 2 
Añadir un nuevo comentario
Título
Nombre de usuario *
Comentario *
Escribe el código de la imagen *