Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/12/2013, 13:00
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: problemas con inner

Código MySQL:
Ver original
  1.   tablaC.`nivel`
  2. FROM tablaA
  3.     INNER JOIN  tablaB
  4. LEFT JOIN tablaC ON tablaB.`puntosnivel` BETWEEN tablaC.`niv_inic` AND tablaC.`niv_fina`
  5. ON tablaA.`clienteid` = tablaB.`cli_id`;
Tu consulta está mal armada, y además tiene campos redundantes.
¿Cuál es la relación entre tablaA o TablaB con TablaC. Esa relación no está allí. Y antes que lo menciones, NO, el BETWEEN no es una forma de relacionar ese valor; y en todo caso eso sería una cláusula del WHERE y no del FROM.

Mira, tablaA y tablaB se relacionan así:
Código MySQL:
Ver original
  1. FROM tablaA INNER JOIN tablaB  ON tablaA.`clienteid` = tablaB.`cli_id`

Pero tablaC no tiene ninguna cláusula ON que indique cómo se vincula, y en ese caso no devolvería datos.

Si estás intentando "abstraer" el modelo, no lo hagas, Posteanos la consulta real, con la estructura de las tablas reales. BBDD es un ámbito muy concreto. Las abstracciones usualmente quitan información muy importante para resolver los casos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)