Ver Mensaje Individual
  #7 (permalink)  
Antiguo 20/01/2012, 02:56
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Consulta jerárquica

Código MySQL:
Ver original
  1. SELECT sbc.id,sbc.negocio,count(*)
  2.        negocio
  3.     FROM subcategorias_negocios
  4.     WHERE subcategoria=X
  5.     UNION ALL
  6.     SELECT sn.id,
  7.        sn.negocio
  8.     FROM subcategorias_negocios sn INNER JOIN categorias c
  9.         ON sn.subcategoria=c.id
  10.     WHERE c.pariente=X
  11.     UNION ALL
  12.     SELECT sn.id,
  13.       sn.negocio
  14.     FROM subcategorias_negocios sn INNER JOIN categorias c
  15.       ON sn.subcategoria=c.id
  16.     WHERE c.pariente IN (SELECT c.id
  17.                                   FROM categorias c
  18.                                    WHERE c.pariente=X)
  19.     UNION ALL
  20.     SELECT sn.id,
  21.       sn.negocio
  22.     FROM subcategorias_negocios sn INNER JOIN categorias c
  23.       ON sn.subcategoria=c.id
  24.     WHERE c.pariente IN (SELECT c.id
  25.                              FROM categorias c
  26.                              WHERE pariente IN (SELECT c.id
  27.                                                  FROM categorias c
  28.                                                            WHERE c.pariente=X))) sbc
  29. GROUP BY sbc.id,sbc.negocio;

Ahora...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.