Problema con una SELECT INNER JOIN

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Alatz
    Junior Member
    • oct
    • 28

    #1

    Problema con una SELECT INNER JOIN

    Hola,
    Vereis, tengo la siguiente SELECT INNER JOIN:

    SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
    INTO TABLE t_cliente_aux
    FROM kna1 AS e INNER JOIN knvk AS p
    ON e~kunnr = p~kunnr
    FROM knvk AS p INNER JOIN knvv AS r
    ON p~kunnr = r~kunnr
    WHERE r~vkorg IN pi_org_ventas
    AND r~spart IN pi_sector
    AND e~kunnr IN pi_codigo.


    El compilador me da el siguiente error: "Wrong expresion FROM in FROM clause..."

    Alguno podría decirme qué es lo que puede estar fallando en mi SELECT?? no es necesario poner paréntesis, no?

    Espero vuestra ayuda.
    Muchas gracias de antemano.
  • luis999
    Member
    • jun
    • 82

    #2
    Creo que debería ser asi tu sentencia:
    SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
    INTO TABLE t_cliente_aux
    FROM kna1 AS e INNER JOIN knvk AS p
    ON e~kunnr = p~kunnr
    INNER JOIN knvk AS p INNER JOIN knvv AS r
    ON p~kunnr = r~kunnr
    WHERE r~vkorg IN pi_org_ventas
    AND r~spart IN pi_sector
    AND e~kunnr IN pi_codigo.


    Originalmente publicado por Alatz
    Hola,
    Vereis, tengo la siguiente SELECT INNER JOIN:

    SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
    INTO TABLE t_cliente_aux
    FROM kna1 AS e INNER JOIN knvk AS p
    ON e~kunnr = p~kunnr
    FROM knvk AS p INNER JOIN knvv AS r
    ON p~kunnr = r~kunnr
    WHERE r~vkorg IN pi_org_ventas
    AND r~spart IN pi_sector
    AND e~kunnr IN pi_codigo.


    El compilador me da el siguiente error: "Wrong expresion FROM in FROM clause..."

    Alguno podría decirme qué es lo que puede estar fallando en mi SELECT?? no es necesario poner paréntesis, no?

    Espero vuestra ayuda.
    Muchas gracias de antemano.

    Comentario

    • negrogho
      Member
      • ene
      • 65

      #3
      Hola Alatz

      la seleccion correcta debe ser

      SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
      INTO TABLE t_cliente_aux
      FROM kna1 AS e INNER JOIN knvk AS p
      ON e~kunnr = p~kunnr
      inner join knvk AS k
      ON k~kunnr = e~kunnr
      INNER JOIN knvv AS r
      ON r~kunnr = e~kunnr

      WHERE r~vkorg IN pi_org_ventas
      AND r~spart IN pi_sector
      AND e~kunnr IN pi_codigo.

      cada Inner join debera llevar su relacion ON con las tablas anteriories

      pero no es muy recomendable enlazar tantas tablas con el Inner join por cuestiones de performance

      saludos

      Comentario

      • negrogho
        Member
        • ene
        • 65

        #4
        ups perdon ja ja ja

        no me di cuenta que la segunda y tercera tabla eran la misma esta es la expresion correcta

        SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
        INTO TABLE t_cliente_aux
        FROM kna1 AS e INNER JOIN knvk AS p
        ON e~kunnr = p~kunnr
        INNER JOIN knvv AS r
        ON r~kunnr = e~kunnr

        WHERE r~vkorg IN pi_org_ventas
        AND r~spart IN pi_sector
        AND e~kunnr IN pi_codigo.

        saludos

        Comentario

        • camaron
          Junior Member
          • jul
          • 14

          #5
          HOLA ALATZ:

          estas usando dos veces la palabra reservada FROM en un inner join y ese es tu error..... tu buesqueda quedaria asi:

          SELECT e~kunnr e~name1 e~name2 e~stras p~ort01 e~land1 e~pstlz p~name1
          INTO TABLE t_cliente_aux
          FROM kna1 AS e INNER JOIN knvk AS p
          ON e~kunnr = p~kunnr
          INNER JOIN knvv AS r
          ON p~kunnr = r~kunnr
          WHERE r~vkorg IN pi_org_ventas
          AND r~spart IN pi_sector
          AND e~kunnr IN pi_codigo.

          Comentario

          • Alatz
            Junior Member
            • oct
            • 28

            #6
            Muchas gracias.
            Me estaba basando en un ejemplo que en teoría compilaba bien, y al parecer no era así.
            Asunto resuelto.

            Comentario

            Trabajando...