Cita:
Iniciado por Pentaxeros Hola gracias por tu aporte, pero no da el resultado que busco.
El código que he publicado si resuelve lo que necesito.
GRACIAS
Tu código es innecesariamente complicado.
Simplemente deberías haber respondido que no obtenías el resultado esperado.
Este es más eficiente que todo eso que pones:
Con este resultado:
Código MySQL:
Ver originalmysql
> SELECT p1.id
, p1.id_PADRE
, p1.Texto
-> WHERE p2.id_PADRE
= - 1 AND p2.familia
= 2) +----+----------+--------------+
| id | id_PADRE | Texto |
+----+----------+--------------+
| 5 | 4 | camisa azul |
| 8 | 4 | camisa verde |
+----+----------+--------------+
El código de una consulta no solo debe devolver algo que se espera. También debe ser reducido, eficiente y optimizado.
Tu código devuelve esto:
Código MySQL:
Ver original+----+----------+--------------+---------+-----+-------------+
| id | id_PADRE | Texto | familia | idX | textoX |
+----+----------+--------------+---------+-----+-------------+
| 3 | 0 | tenedor | 2 | 3 | tenedor |
| 1 | 0 | percha | 1 | 1 | percha |
| 2 | 0 | libro | 2 | 2 | libro |
| 6 | 0 | flores | 2 | 6 | flores |
| 7 | 0 | camisa rosa | 2 | 7 | camisa rosa |
| 4 | -1 | camisa | 2 | 4 | camisa |
| 5 | 4 | camisa azul | 2 | 4 | camisa |
| 8 | 4 | camisa verde | 2 | 4 | camisa |
+----+----------+--------------+---------+-----+-------------+
Tienes datos redundantes y entremezclados.