elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Cómo obtener la semana actual a partir del día actual
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Cómo obtener la semana actual a partir del día actual  (Leído 11,344 veces)
cpichi.cu

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Cómo obtener la semana actual a partir del día actual
« en: 7 Julio 2011, 17:16 pm »

Quizás el nombre del post no sea muy preciso, así que lo mejor será que me expliqué mejor.

Lo que necesito es lo siguiente: tengo una BD en MySql y necesito hacer unas búsquedas por fechas, para lo cual tengo un combo donde tengo estas opciones:

Today
Yesterday
This Week
This Month
Last 7 days
Last 30 days
Last calendar month
Date Range

Para Today y Yesterday y los 7 y 30 días antes tengo la solución, utilizo:

TO_DAYS(NOW()) - TO_DAYS(o.date) = 0
TO_DAYS(NOW()) - TO_DAYS(o.date) = 1
TO_DAYS(NOW()) - TO_DAYS(o.date) <= 7
TO_DAYS(NOW()) - TO_DAYS(o.date) <= 30

respectivamente...
Pero mi problema comienza con los días de la semana actual, que no sé cómo lograr que a partir de la fehca actual NOW() pueda obtener los 7 días de la semana correspondiente...

Lo tengo medio logrado con una combinación bastante complicada de MySql, pero necesitaría PHP, quiero saber si existe alguna función en MySql implementada para tal efecto, o si lo tengo que combinar obligatoriamente. Me serviría también algo de ayuda para Las Calendar Month, el rango de fecha lo tengo hecho también, sería algo cómo esto:

RegDate >= '2008-10-10' AND RegDate <= '2008-12-11'

Gracias por la ayuda.


En línea

"La teoría es cuando se sabe todo y nada funciona.
La práctica es cuando todo funciona y nadie sabe por qué.
En este caso hemos combinado la teoría y la práctica: nada funciona... y nadie sabe por qué." (Albert Einstein)
cpichi.cu

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Cómo obtener la semana actual a partir del día actual
« Respuesta #1 en: 7 Julio 2011, 17:27 pm »

Bueno, gracias por leer, ya he resuelto el problema, SAN Google, me ayudó,  :-\

Aquí dejo la solución por si acaso alguien se topa con el problemilla.

SELECT
 *
 FROM orders  as o
 WHERE YEARweek(o.date) = YEARweek(CURRENT_date)

Ese SELECT devuelve todas las "orders" que estén con fecha de la semana corriente.

Y este otro es para la semana anterior

SELECT
*
 FROM orders as o
 WHERE YEARweek(o.date) = YEARweek(CURRENT_date - INTERVAL 7 DAY)

******Y para el LAST MONTH****

SELECT 
*
 FROM orders as o
 WHERE
 SUBSTRING(o.date FROM 1 FOR 7) =  SUBSTRING(CURRENT_date - INTERVAL 1 MONTH FROM 1 FOR 7)


Saludos, espero haber ayudado a alguien.


En línea

"La teoría es cuando se sabe todo y nada funciona.
La práctica es cuando todo funciona y nadie sabe por qué.
En este caso hemos combinado la teoría y la práctica: nada funciona... y nadie sabe por qué." (Albert Einstein)
Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.336

he vuelto :)


Ver Perfil WWW
Re: Cómo obtener la semana actual a partir del día actual
« Respuesta #2 en: 8 Julio 2011, 08:08 am »

jajaja lo conseguiste en menos de 9 minutos :xD me alegra que publicaras la solución a tu problema :) muchos se olvidan de que preguntaron y no ayudan a los demás cuando tienen la misma dificultad, todo por guardarse la solución... gracias ;)
En línea

Ojo por ojo, y el mundo acabará ciego.
cpichi.cu

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Cómo obtener la semana actual a partir del día actual
« Respuesta #3 en: 8 Julio 2011, 14:04 pm »

Siempre que puedo ayudo, como mismo tuve la duda yo, la puede tener otro, no importa que sea algo simple, siempre habrá alguien queriendo apreder y necesitará que lo guíen, a veces he encontrado soluciones en post de más de 4 años de antigüedad.

Aquí dejo la solocuión para cómo sería seleccionar las "orders" del mes en curso.

SELECT
 *
 FROM orders  as o
 WHERE MONTH(o.date) = MONTH(CURRENT_DATE)
En línea

"La teoría es cuando se sabe todo y nada funciona.
La práctica es cuando todo funciona y nadie sabe por qué.
En este caso hemos combinado la teoría y la práctica: nada funciona... y nadie sabe por qué." (Albert Einstein)
cchianalino

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Cómo obtener la semana actual a partir del día actual
« Respuesta #4 en: 25 Septiembre 2018, 17:25 pm »

Hola se que hace mucho que este hilo no tiene actividad pero... siempre alguien ayuda
si necesitara realizar una consulta en un rango que va de jueves a jueves a partir de una fecha.
tengo campo fecha y necesito haces
WHERE fecha BETWEEN (jueves pasado) AND (jueves proximo)
desde ya gracias !!!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines