MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 22/09/06, 12:27:16
Avatar de dmgman
dmgman dmgman is offline
Senior Member
 
Fecha de Ingreso: feb 2006
Localización: Getafe
Mensajes: 149
Como optimizo una consulta con "SELECT SINGLE"

Hola a todos,
Me han encargado optimizar un report ya que el tiempo de ejecucion es demasiado elevado.
Tras analizarlo encuentro que casi la mitad de la ejecucion se va en un "SELECT SINGLE" a la tabla BSAS que contiene 5 millones de registros.
Esta es la famosa sentencia:


No llevo mucho tiempo en Sap y no se me ocurre q alternativa podria tomar.
Gracias
__________________
Carpe Diem !!
Responder Con Cita
  #2  
Viejo 22/09/06, 13:04:00
conrad10ar conrad10ar is offline
Banned
 
Fecha de Ingreso: mar 2006
Mensajes: 296
Habría que ver bien como está el programa completo, pero lo primero que haría es cambiar el IN por un EQ.

Espero te sea de ayuda.
Responder Con Cita
  #3  
Viejo 22/09/06, 14:27:44
maescobarl maescobarl is offline
Member
 
Fecha de Ingreso: abr 2006
Mensajes: 60
create un indice en la tabla o una vista con un indice y listo!!!!

Espero te funcione
Responder Con Cita
  #4  
Viejo 22/09/06, 14:37:50
Avatar de Jotabin
Jotabin Jotabin is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Buenos Aires
Mensajes: 117
Que haya un IN no hace diferencia con un EQ... en definitiva un IN son varios EQs. El problema son los índices.

Para que un SELECT o SELECT SINGLE sea performante, el WHERE tiene que incluir todos los campos de la clave o todos los campos de alguno de los índices de la tabla.

Como dijo maescobarl, podés crearle un nuevo índice a la tabla para mejorar la performance.

Lo más recomendable suele ser buscar la forma de utilizar uno de los índices ya creados para la tabla, o en el mejor de los casos los campos clave, pero como esto no siempre es posible, como última opción podés crearle un nuevo índice que incluya los campos por los que accede tu select.
__________________
resistance is futile
Responder Con Cita
  #5  
Viejo 22/09/06, 14:43:09
maescobarl maescobarl is offline
Member
 
Fecha de Ingreso: abr 2006
Mensajes: 60
Hola Jotabin, Gracias por reforzar mi comentario.

Saludos a todos
Responder Con Cita
  #6  
Viejo 22/09/06, 14:53:32
conrad10ar conrad10ar is offline
Banned
 
Fecha de Ingreso: mar 2006
Mensajes: 296
Tienes razón, esa es la manera correcta, igualmente prueba en la consulta usar todos EQ y cambiarlos por IN, y la performance baja.

Saludos a todos!
Responder Con Cita
  #7  
Viejo 22/09/06, 15:20:31
maescobarl maescobarl is offline
Member
 
Fecha de Ingreso: abr 2006
Mensajes: 60
Compañeros,

Creo que de lo anterior surge un nuevo tema, el cual yo no estoy muy adentrado... el uso del TRACE (ST05), alguno de ustedes nos puede dar una catedra de como usarlo y saber especificamente que INDICE se esta ocupando al momento de ejecucion???.

Espero sus comentarios

Saludos
Responder Con Cita
  #8  
Viejo 01/06/13, 17:25:23
moji87 moji87 is offline
Junior Member
 
Fecha de Ingreso: may 2013
Mensajes: 19
Indexes

Pero...¿para que sirve un índice?¿Dónde se utiliza?¿Dónde se crea?¿Cuales se utilizan?
Responder Con Cita
  #9  
Viejo 18/06/13, 12:35:27
Avatar de damiko30
damiko30 damiko30 is offline
Junior Member
 
Fecha de Ingreso: mar 2011
Localización: Rafaela - Santa Fe - Argentina
Mensajes: 13
Coding

Buen día gente!!!
Les comento, tengo un Query que tiene delimitaciones de dos campos, uno es para fechas, en este necesito generar un código ABAP que no me permita cargar un rango de fecha mayor a 30 días. Se puede lograr esto?
Aguardo respuesta. Desde ya muchas gracias.
__________________
Darío Hernán Mur

Analista en Sistema
de Información
Responder Con Cita
  #10  
Viejo 13/08/07, 15:00:13
guts11 guts11 is offline
Junior Member
 
Fecha de Ingreso: may 2007
Mensajes: 1
El Select Single esta dentro de un loop??
De ser asi estaria mejor volcar todo a una tabla interna, de los campos que necesites.
Saludos

Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 19:51:01.


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