Optimizar Consulta

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • jjeffer
    Member
    • jun
    • 62

    #1

    Optimizar Consulta

    Hola

    El problema que tengo es que al realizar la siguiente consulta el sistema tarda aproximadamente 6 minutos en ejecutarla.

    SELECT *
    INTO CORRESPONDING FIELDS OF TABLE t_txt
    FROM n2text INNER JOIN y000001i ON n2text~doknr = y000001i~doknr
    WHERE n2text~doknr EQ v_numdoc.

    Como ven estoy utilizando un INNER JOIN ya que necesito obtener el texto de una tabla que no esta dentro del documento que estoy manejando, ya que la tabla n2text la manejan todos los documentos de tipo PMD pues debe contener demasiados datos.

    Si alguno de ustedes sabe como hacer que esta consulta se demore menos, les agradeceré bastante.

    Gracias.
  • kibo
    Senior Member
    • may
    • 177

    #2
    Como primer medida deberias de sacar el * y poner exactamente los campos vas a utilizar.

    Luego deberias de quitar el into corresponding fields, y armar una tabla interna con los campos que vas a utilizar (se deben corresponder con los que detallas en el Select).

    Deberías tambien ver si puedes poner mas condiciones en el Where o en el On para ascelerar la busqueda.

    Si utilizas For All Entries tambien optimizarias la consulta, ya que muchos textos seguramente se repitan y con FAE podes ir a buscar solo los distintos.

    La Logica del FAE es mas compleja pero a mi gusto, mas entendible que utilizar un Join; en cuanto a la performance habria que ver bien los campos y los datos de la tabla Y.
    http://diariotitular.com/contacto/

    Comentario

    • J_Delcanto
      Member
      • may
      • 84

      #3
      Originalmente publicado por jjeffer
      Hola

      El problema que tengo es que al realizar la siguiente consulta el sistema tarda aproximadamente 6 minutos en ejecutarla.

      SELECT *
      INTO CORRESPONDING FIELDS OF TABLE t_txt
      FROM n2text INNER JOIN y000001i ON n2text~doknr = y000001i~doknr
      WHERE n2text~doknr EQ v_numdoc.

      Como ven estoy utilizando un INNER JOIN ya que necesito obtener el texto de una tabla que no esta dentro del documento que estoy manejando, ya que la tabla n2text la manejan todos los documentos de tipo PMD pues debe contener demasiados datos.

      Si alguno de ustedes sabe como hacer que esta consulta se demore menos, les agradeceré bastante.

      Gracias.
      Tengo un pequeño documento con algunas sentencias que optimizan el codigo...si quieres te lo envio...aparece el tiempo que se demora y como utilizarlo = )

      Comentario

      Trabajando...