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

Duda de como construir una consulta en SP

Estas en el tema de Duda de como construir una consulta en SP en el foro de Mysql en Foros del Web. Pues os comento, soy muy novato en mySql... y me está costando empezar. Quiero hacer una consulta mediante un procedimiento almacenado, al cual como parametro ...
  #1 (permalink)  
Antiguo 15/01/2013, 03:23
Tio
 
Fecha de Ingreso: enero-2005
Mensajes: 54
Antigüedad: 19 años, 3 meses
Puntos: 1
Duda de como construir una consulta en SP

Pues os comento, soy muy novato en mySql... y me está costando empezar.

Quiero hacer una consulta mediante un procedimiento almacenado, al cual como parametro de entrada le paso el número del mes (1 al 12)

con ese parámetro tiene que generar dos fechas , fechaInicial y fechaFinal.

FechaInicial sería 1/MES/AÑO_ACTUAL

FechaFinal sería 30ó31ó28ó29/MES/AÑO_ACTUAL

Es decir, pasando al procedimiento almacenado unicamente el número del mes tiene que generar la fecha inicial de ese mes y la final del mes teniendo en cuenta si es mes de 30 ó 31 dias ó 28 ó 29 dias.

supongo que me entendeis?... es un poco enrrevesado. es que quiero trasladar a la base de datos toda la lógica que pueda y no tener que hacer esos cálculos en la aplicación y pasar luego los dos parámetros.

Un saludo y gracias por la ayuda
  #2 (permalink)  
Antiguo 15/01/2013, 06:12
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: Duda de como construir una consulta en SP

Mira, en general en los lenguajes de programación suele haber (.Net, por caso), funciones de fecha que te permiten realizar esa tarea sin tener que recurrir a inventar una función en la base de datos. E incluso es mucho más eficiente hacerlo en programación que en SQL.
¿Por qué quieres hacerlo por este medio?
¿Qué ventaja supones que puede tener?
¿En qué contexto lo usarías y para resolver qué problema?

Puede que veamos un mejor camino para tu problema si nos das algo más de información.

Como tip te comento: no necesitas el SP para crear el primer día del mes, porque ese día es siempre 1. No tiene ninguna utilidad hacer eso.
En ese contexto, bien podrías hacer:
Código MySQL:
Ver original
  1. CONCAT('01-', MONTH(fecha), '-', YEAR(fecha))
y obtendrías esa fecha, pudiendo usar directamente eso en un INSERT sin necesidad de un SP.
En cuanto al último día, bien podrías usar
Código MySQL:
Ver original 
, al momento de pretender insertar esa fecha en una tabla, con lo que tampoco sería necesario el SP...
Trata de no complicarte creando funciones para datos que puedes crear en programación, o por medios de funciones que ya existen.
En el Manual de Referncia de MySQL hay muchas funciones más. Leelas.
http://dev.mysql.com/doc/refman/5.0/es/functions.html
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 15/01/2013 a las 06:20
  #3 (permalink)  
Antiguo 15/01/2013, 07:17
Tio
 
Fecha de Ingreso: enero-2005
Mensajes: 54
Antigüedad: 19 años, 3 meses
Puntos: 1
Respuesta: Duda de como construir una consulta en SP

hola!

Tomo nota de lo que me indicais... mas que nada es porque estoy intentando hacer en mysql lo que tenia hecho en ms sql server 2008, y ya que es una aplicación jsp no queria complicarme mucho, pero finalmente lo he separado y en una clase específica se encarga de todo antes de llamar al procedimiento almacenado.

gracias!

Etiquetas: construir, sql
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 15:05.