MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Cual forma es mejor. (foro/showthread.php?t=45911)

DCErick 19/10/11 15:02:50

Cual forma es mejor.
 
Tengo el siguiente select:



Y tengo este otro


¿Cual recomiendan que deje?

El resultado que espero es traer todas las ordenes de mantenimiento en donde fin programado esté en el futuro (fecha y hora mayor igual a la fecha y hora actual.

Fabian leonardo velasquez 19/10/11 16:03:37

Ley de vida, simpre evita utilizar sentencias OR en las consultas a las bases de datos. Para mejorar la rutina podrias organizar la tabla interna por la fecha y la hora. de tal forma que al hacer el DELETE la rutina funcione mucho mas rapido. Igual lo mejor que podrias hacer es hacer TEST de rendimiento a tu programa.

SELECT aufnr objid gstrs
gsuzs gltrs gluzs
INTO TABLE lt_ordenes_pm
FROM caufv WHERE autyp = '30'
AND bukrs = c_bukrs
AND werks = c_werks
AND gltrs >= sy-datum.

***Ordena la tabla interna

DELETE lt_ordenes_pm WHERE gltrs EQ sy-datum
AND gluzs LE sy-uzeit.

DCErick 19/10/11 16:12:12

Si, opté por hacer el delete a la tabla interna y tienes razon me olvidé del ordenamiento para hacer el delete mas rápido.

gracias.

kibo 19/10/11 17:08:07

Porque haciendo el Sort es mas rapido? el delete where va a recorrer todos los registro de la tabla interna, si los encuentra todos juntos o separadas es lo msmo o no?

DCErick 19/10/11 18:11:17



Al ordenar la TI se indexa la misma, por lo cual posteriores busquedas,inserciones, o actualizaciones sobre la misma se realizan de manera mas veloz.


Husos Horarios son GMT. La hora en este momento es 21:44:55.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web