Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] ayuda con consulta

Estas en el tema de ayuda con consulta en el foro de Mysql en Foros del Web. Alguien que me pueda ayudar a estructurar esta consulta por favor necesito obtener la suma de datos de cierto mes pero del año actual ejemplo ...
  #1 (permalink)  
Antiguo 27/12/2010, 14:18
 
Fecha de Ingreso: noviembre-2010
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 2
ayuda con consulta

Alguien que me pueda ayudar a estructurar esta consulta por favor
necesito obtener la suma de datos de cierto mes pero del año actual ejemplo enero del 2011
para que solo me obtenga los datos del mes que le pido pero del año actual.
Código:
SELECT SUM( CANTIDAD_HABIT_OCUP ) 
FROM OCUPACION
WHERE MONTH( FECHA_OCUPACION ) = '01'
AND YEAR( FECHA_OCUPACION ) = EXTRACT( YEAR SELECT FROM
CURDATE( ) )
  #2 (permalink)  
Antiguo 27/12/2010, 14:35
Avatar de Snaft_J1  
Fecha de Ingreso: diciembre-2006
Mensajes: 285
Antigüedad: 17 años, 4 meses
Puntos: 8
Respuesta: ayuda con consulta

como lo tienes deberia ser mas que suficiente de casualidad no obtienes el resultado esperado?
__________________
-= El conocimiento y el saber te hacen un ser libre =-
Ando en busca de conocimiento....
  #3 (permalink)  
Antiguo 27/12/2010, 14:37
 
Fecha de Ingreso: noviembre-2010
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: ayuda con consulta

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXTRACT(YEAR FROM ACTUAL SELECT CURDATE()AS ACTUAL)' at line 1

esto es lo que me sale como resultado
  #4 (permalink)  
Antiguo 27/12/2010, 14:40
 
Fecha de Ingreso: noviembre-2010
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: ayuda con consulta

bueno el resultado de la sintaxis principal que pubique es

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT FROM CURDATE( ) )' at line 1
  #5 (permalink)  
Antiguo 27/12/2010, 14:41
Avatar de Snaft_J1  
Fecha de Ingreso: diciembre-2006
Mensajes: 285
Antigüedad: 17 años, 4 meses
Puntos: 8
Respuesta: ayuda con consulta

ok, cambia tu extract por In () y prueba nuevamente.
__________________
-= El conocimiento y el saber te hacen un ser libre =-
Ando en busca de conocimiento....
  #6 (permalink)  
Antiguo 27/12/2010, 14:46
 
Fecha de Ingreso: noviembre-2010
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: ayuda con consulta

muchas gracias Snaft_jl ya lo solucione y quedo asi por si a alguien le sirve
SELECT SUM( CANTIDAD_HABIT_OCUP )
FROM OCUPACION
WHERE MONTH( FECHA_OCUPACION ) = '12'
AND YEAR( FECHA_OCUPACION ) = EXTRACT( YEAR
FROM (

SELECT CURDATE( ) ) )
  #7 (permalink)  
Antiguo 27/12/2010, 14:46
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: ayuda con consulta

Saludos

Prueba de la siguiente manera:

Código MySQL:
Ver original
  1. SELECT SUM( CANTIDAD_HABIT_OCUP )
  2. FROM OCUPACION
  3. WHERE MONTH( FECHA_OCUPACION ) = '01'
  4. AND YEAR( FECHA_OCUPACION ) = EXTRACT( YEAR (CURDATE( )) )

EDITADO: Llegue algo tarde

Que bueno que lo hallas solucionado

Hasta Pronto
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #8 (permalink)  
Antiguo 27/12/2010, 15:24
 
Fecha de Ingreso: noviembre-2010
Mensajes: 181
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: ayuda con consulta

ya lo probe pero no funciona
SELECT SUM( CANTIDA

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '( FECHA_OCUPACION ) = '01'AND YEAR( FECHA_OCUPACION ) = EXTRACT( YEAR (CURDATE( ' at line 1
D_HABIT_OCUP ) FROM OCUPACIONWHERE MONTH( FECHA_OCUPACION ) = '01'AND YEAR( FECHA_OCUPACION ) = EXTRACT( YEAR (CURDATE( )) )
  #9 (permalink)  
Antiguo 27/12/2010, 15:47
Avatar de Snaft_J1  
Fecha de Ingreso: diciembre-2006
Mensajes: 285
Antigüedad: 17 años, 4 meses
Puntos: 8
Respuesta: ayuda con consulta

ya lo probaste como te mensione?

Código MySQL:
Ver original
  1. SELECT SUM( CANTIDAD_HABIT_OCUP )
  2. FROM OCUPACION
  3. WHERE MONTH( FECHA_OCUPACION ) = '01'
  4. AND YEAR( FECHA_OCUPACION ) = YEAR (CURDATE())

chekate esto http://dev.mysql.com/doc/refman/5.0/...culations.html
__________________
-= El conocimiento y el saber te hacen un ser libre =-
Ando en busca de conocimiento....
  #10 (permalink)  
Antiguo 27/12/2010, 20:15
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: ayuda con consulta

Cuidado con dejar espacios entre el nombre de la función y el paréntesis. MySQL lo toma como un error de sintaxis:
Código MySQL:
Ver original
  1. SELECT SUM(CANTIDAD_HABIT_OCUP)
  2. FROM OCUPACION
  3.     MONTH(FECHA_OCUPACION) = 1 AND
  4.     YEAR(FECHA_OCUPACION) = YEAR(CURDATE())
Por otro lado, MONTH(), YEAR() o DAY() no devuelven una cadena, sino un entero. Eso puede dar lugar a errores por conversiones implícitas, ya que no es lo mismo '1' que '01'
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:50.