Autor Tema: [MySQL]Seleccionar 7 meses anteriores al actual  (Leído 7885 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
[MySQL]Seleccionar 7 meses anteriores al actual
« : mayo 03, 2010, 09:52:57 am »
La fecha actual la tomo del servidor MySQL ahora bien
Como puedo hacer par aseleccionar siete meses anteriores al mes actual

Ejemplo.. si estoy actualmente en MAYO

Lo que necesito obtener es esto...

__________________________________________________
5    |      4    |     3    |    2    |    1   |    12  |   11  |  10       |



Utilice

SELECT MONTH(NOW())-1, MONTH(NOW())-2,  ...

pero el resultado no es el esperado pues al final me devuelve 0 , -1 pues solo voy restando 1 al mes acutal...

saludos
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado Camus de Acuario

  • The Communiter-
  • *
  • Mensajes: 8455
  • Ōrora Ekusukyūshon!
Re:[MySQL]Seleccionar 7 meses anteriores al actual
« Respuesta #1 : mayo 03, 2010, 10:13:00 am »
Ocupa la funcion add_mounts(x,y), donde:
x = fecha
y = meses que quieras añadir a esa fecha

por lo que para tu caso sería:

Código: [Seleccionar]
SELECT add_months(now(), -7) from Tabla
Por lo que ves, add_months si al numero de meses le pones un valor negativo, resta esos meses, y si pones un positivo los suma.

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:[MySQL]Seleccionar 7 meses anteriores al actual
« Respuesta #2 : mayo 03, 2010, 10:18:44 am »
add_months es para MySQL?, me devuelve este error, como que buscara una tabla llamada add_months

Citar
Error Code : 1305
FUNCTION gca.add_months does not exist

PD: Creo que es para Oracle...
« Última Modificación: mayo 03, 2010, 10:24:34 am por Darkness »
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado Camus de Acuario

  • The Communiter-
  • *
  • Mensajes: 8455
  • Ōrora Ekusukyūshon!
Re:[MySQL]Seleccionar 7 meses anteriores al actual
« Respuesta #3 : mayo 03, 2010, 10:42:54 am »
add_months es para MySQL?, me devuelve este error, como que buscara una tabla llamada add_months

PD: Creo que es para Oracle...
Tenes toda la razon, la funcion equivalente para mysql es:

Código: [Seleccionar]
SELECT DATE_ADD(now(), INTERVAL -7 MONTH)
Esta funcion es parecida a add_months de oracle porque puedes definir meses para adelante o para tras, además de meses también acepta estos intervalos:
SECOND, MINUTE, HOUR, DAY, MONTH, YEAR
« Última Modificación: mayo 03, 2010, 10:47:54 am por Camus de Acuario »

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:[MySQL]Seleccionar 7 meses anteriores al actual
« Respuesta #4 : mayo 03, 2010, 10:49:06 am »
Tenes toda la razon, la funcion equivalente para mysql es:

Código: [Seleccionar]
SELECT DATE_ADD(now(), INTERVAL -7 MONTH)


Hey man Gracias.... uta, yo anduve buscando el equivalente de add_months para mysql y no lo encontraba....

hasta me estaba haciendo una mega funcion en .Net para calcularlo...

Gracias nuevamente man!!!
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD