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

Insertar datos desde un stored procedure

Estas en el tema de Insertar datos desde un stored procedure en el foro de Bases de Datos General en Foros del Web. Saludos a todos, Tengo un procedimiento almacenado el cual me arroja una serie de resultados en unas variables, yo quisiera saber si dentro de ese ...
  #1 (permalink)  
Antiguo 15/12/2004, 10:08
 
Fecha de Ingreso: agosto-2004
Mensajes: 55
Antigüedad: 19 años, 8 meses
Puntos: 0
Insertar datos desde un stored procedure

Saludos a todos,

Tengo un procedimiento almacenado el cual me arroja una serie de resultados en unas variables, yo quisiera saber si dentro de ese procedimiento almacenado puedo insertar los valores devueltos a una tabla.

Por ejemplo tengo el siguiente código:
SELECT

CASE WHEN MONTH(FECHA_CIERRE) > 9 THEN
MONTH(FECHA_CIERRE) - 9
ELSE MONTH(FECHA_CIERRE) + 3
END AS MES,

CASE WHEN MONTH(FECHA_CIERRE) = 10 THEN 1
ELSE 0
END AS M1SOL,

FROM Qry_Ordenes_Solicitud

Al ejecutar ese query me devuelve los siguientes resultados
MES M1SOL
12 1

bueno yo deseo insertar el resultado de mes y m1sol en una tabla, pero desde el mismo procedimiento almacenado.

Agradeceria cualquier tipo de ayuda, hasta luego
Jani
  #2 (permalink)  
Antiguo 15/12/2004, 15:43
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Te hace falta un dato importante, que RDBMS utilizas?

Por ejemplo en SQL Server sería algo como:
Código:
SELECT
	CASE WHEN MONTH(FECHA_CIERRE) > 9 THEN
		MONTH(FECHA_CIERRE) - 9
		ELSE MONTH(FECHA_CIERRE) + 3
	END AS MES,
	CASE WHEN MONTH(FECHA_CIERRE) = 10 THEN 1
		ELSE 0
	END AS M1SOL
INTO #tablaTemporal
FROM Qry_Ordenes_Solicitud
Aunque la efectividad de la situacion depende de tu problema particular, quiza las tablas temporales no te sean útiles.

Explica un poco mas
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 15/12/2004, 20:39
Avatar de axel_mdq  
Fecha de Ingreso: mayo-2004
Ubicación: Mar del Plata
Mensajes: 157
Antigüedad: 19 años, 11 meses
Puntos: 0
Por lo que entendí, yo lo haría de otra forma:

Código:
INSERT INTO NombreTabla(mes,m1sol)
SELECT
	CASE WHEN MONTH(FECHA_CIERRE) > 9 THEN
		MONTH(FECHA_CIERRE) - 9
		ELSE MONTH(FECHA_CIERRE) + 3
	END AS MES,
	CASE WHEN MONTH(FECHA_CIERRE) = 10 THEN 1
		ELSE 0
	END AS M1SOL
FROM Qry_Ordenes_Solicitud
Obviamente necesitas que tu tabla tenga la misma estructura que el select para poder insertar. En caso de no ser así, tendrías que poner todos los campos en el insert into, y agregar null en la consulta de select.
¿Esto es lo que pedias?
__________________
Saludos,

Alejandro. :adios:
  #4 (permalink)  
Antiguo 16/12/2004, 07:10
 
Fecha de Ingreso: agosto-2004
Mensajes: 55
Antigüedad: 19 años, 8 meses
Puntos: 0
Saludos,
Gracias Mithrandir y Axel mdq, de verás que me sirvieron las dos recomendaciones para lo que queria hacer, muchisimas gracias.

Hasta luego,
Jani
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 12:51.