Me suena a un problema de índices. Hace poco tuve un problema similar y, simplemente, creando los índices apropiados el trabajo pasó de 8 horas a 1.
Abre el iSeries Navigator , entra en Bases de Datos, Ejecutar script SQL. Le escribes la sentencia y pulsa en el botón que pone Visual Explain. Te abre una nueva ventana, selecciona el asesor de estadísticas e índices. Por último en la pestaña asesor de índices, mira a ver cuáles te indica. Creando estos índices, los tiempos de ejecución se pueden reducir en proporciones increíbles. Saludos. Juan Carlos. -----Mensaje original----- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Enviado el: viernes, 24 de octubre de 2008 20:36 Para: [email protected] Asunto: CONSULTA SOBRE RPGLE Y SQL Estimados, Recientemente estuve cambiando una aplicación hecha de unas 30 consultas (Query/400). Cada query extrae datos de dos tablas, se totalizan y se genera un archivo. Cada consulta va agregando datos al archivo de salida. Lo unico que cambia entre consulta en la selección de registros, que es bastante diversa (en algunos casos evalúa una campo, tres campos, en otros 4, etc.) Los registros recuperados por cada querys son pocos pero las tablas utilizadas son enormes. Bueno, resulta que se ha sustituido esto (los 30 querys) por un RPGLE con SQL-embebido. Lo que se hizo es construir una sentencias preparadas por cada uno de los querys. Tenemos un archivo donde hemos colocando los where, hacemos un Dow con este archivo y por cada lectura construimos un sentencia preparada insertadole su respectivo where. La sentencia preparada que creamos es más o menos así: insert "archivodesalida" select xx from tabla1 left join tabla2 on xx=bb where "(del archivo)" group by xxx Funciona solo que muy lento en comparación de los querys. Viendo los mensajes del depurador, dice que se ha reconstruido el plan de consultas y advierte que si se esta reconstruyendo mucho puede ser un error en la aplicación. Mi consulta va en como hacer para que no se reconstruya el plan de acceso o si es el tipo de sentencia lo malo, mejor creo un cursor que accedo los registros con un fetch... ¿no se?, alguien tendrá una idea. SALUDOS A TODOS de El Salvador. MAURICIO HERRERA __________________________________________________ Forum.HELP400 es un servicio más de NEWS/400. © Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400 No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.175 / Virus Database: 270.8.3/1748 - Release Date: 26/10/2008 19:53 De acuerdo con la Ley orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal, le informamos que los datos que nos facilite podrían ser incluidos en los ficheros de *GRUPO EVEREST con fines comerciales, contractuales y publicitarios y, a tal efecto, serán cedidos a otras empresas del Grupo Everest dedicadas a actividades de impresión, encuadernación, edición, publicación, distribución y venta de libros y otra clase de publicaciones. Sus datos se presumen veraces mientras no nos comunique lo contrario. Podrá ejercitar sus derechos de acceso, rectificación, candelación y oposición en la siguiente dirección, carretera León - A Coruña, km.5, s/n, código postal 24010 (León). *GRUPO EVEREST está integrado por EDITORIAL EVEREST,S.A, EVEREST DE EDICIONES Y DISTRIBUCIÓN,S.L., LA BOUTIQUE DEL LIBRO Y DEL OCIO,S.L., GRUPO EVERHOUSE,S.L., EDITORIAL EVEREST ANDALUCÍA,S.L., EDICIONES GAVIOTE,S.L., EDICIONES CADÍ,S.L., EDITORIAL EVERGRÁFICAS,S.L., GRUPO EVEREST DE COMUNICACIÓN,S.L., EDITORIAL EVEREST GALICIA,S.L., AIZKORRI ARGITALETXEA, S.L. __________________________________________________ Forum.HELP400 es un servicio más de NEWS/400. © Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400

