Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/01/2012, 14:26
mikexloo
 
Fecha de Ingreso: mayo-2011
Mensajes: 25
Antigüedad: 13 años
Puntos: 1
JOIN dos tablas mas COUNT en una tercera

SELECT * FROM categories AS t1 RIGHT JOIN tabla2 AS t2
ON t1.id=t2.id WHERE t1.order=0 ---->esto me hace el join entre 2 tablas

IFNULL(COUNT(t3.service),0) AS count
FROM tabla3 ----> cuenta las lineas de la 3ra inclusive los valores nulos como 0

Estoy intentando hacer un solo query que haga lo que necesito, con la primera obtengo todas las lineas de tabla1 y tabla2 , pero necesito un campo adicional, que es la suma de lineas que coinciden con un campo en la tabla1(id) en una tabla3 , ademas una doble coincidencia en la misma tabla, Me explico mejor aqui.
tabla1
id = 1 a 12, order = 1 a 12 (estas doce lineas que necesito obtenidas en el 1er join)
esta misma tabla1 tiene otra columna parent
parent = 1 a 12 (varias lineas con valores 1 a 12)

el ultimo valor es suma de lineas de un tercera tabla
tabla3
campo = valores del 13 al 121 por supuesto repetidos
Lo que deseo conseguir es las doce filas unidas mas un campo que es la suma de lineas en la tabla3 esta suma es tabla3 donde tabla1.parent = tabla1_order (si, coincidencia en la misma tabla)

Alguna idea? Muchas gracias por adelantado