Tengo una especie de árbol en mi base de datos MySQL.Datos jerárquicos en MySQL
Tengo una base de datos que tiene categorías, y cada categoría tiene un subcatálogo. Me quedo con todas las categorías en una tabla, por lo que las columnas son así:
*categories table*
id | name | parent_id
1 | Toys | 0
2 | Dolls | 1
3 | Bikes | 1
Cada elemento en mi base de datos se asigna a una de esas categorías:
*items table*
item | category_id
barbie | 2
schwinn| 3
El problema es que si alguien quiere ver todos los JUGUETES (la categoría principal) ¿cuál es la mejor manera de obtener la información de la base de datos de elementos? La única forma que conozco es hacer algo como
SELECT *
FROM items
WHERE category_id = 2
JOIN SELECT *
FROM items
WHERE category_id = 3
etc...
Pero si tuviera como 10 categorías bajo juguetes, entonces tendría que hacer esta unión y Query 10 veces.
¿Hay una mejor manera de manejar esto?
Los une son sintaxis SQL no válida (y si se fija la sintaxis por ejemplo, mediante paréntesis alrededor de la segunda seleccionar a obtener un conjunto de resultados vacío); Tal vez te refieres a UNIÓN? –