#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. |
#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.
__________________
Luis Lipa
|
#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 |
#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 |
#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. |
#6
|
|||
|
|||
Muchas gracias.
Me estaba basando en un ejemplo que en teoría compilaba bien, y al parecer no era así. Asunto resuelto. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|