Imam tri tabele:
categories(id, parent_id),
categories_languages(category_id, language_id, name, description)
languages(id, name)
Cilj:
Zelim da izlistam sve kategorije sa svojim parent kategorijama (ogranicio sam se na tri nivoa) odnosno njihova njihova id i name polja za odredjeni jezik.
Ja sam uradio sledece (ispise mi samo id-eve):
Code:
SELECT t1.id, t2.id, t3.id
FROM categories AS t1
LEFT JOIN categories AS t2 ON t2.parent_id = t1.id
LEFT JOIN categories AS t3 ON t3.parent_id = t2.id
SELECT t1.id, t2.id, t3.id
FROM categories AS t1
LEFT JOIN categories AS t2 ON t2.parent_id = t1.id
LEFT JOIN categories AS t3 ON t3.parent_id = t2.id
to je jednostavan deo posla jer kada dodam ovo,
Code:
LEFT JOIN categories_languages AS cl1 ON cl1.category_id = t1.id
LEFT JOIN categories_languages AS cl2 ON cl2.category_id = t2.id
LEFT JOIN categories_languages AS cl3 ON cl3.category_id = t3.id
WHERE cl1.language_id = 1
AND cl2.language_id = 1
AND cl3.language_id = 1
LEFT JOIN categories_languages AS cl1 ON cl1.category_id = t1.id
LEFT JOIN categories_languages AS cl2 ON cl2.category_id = t2.id
LEFT JOIN categories_languages AS cl3 ON cl3.category_id = t3.id
WHERE cl1.language_id = 1
AND cl2.language_id = 1
AND cl3.language_id = 1
eliminise mi sve redove gde je id null.
Ja dalje ne znam, ne mogu da mrdnem svasta sam citao ova dva dana ali nisam naisao na onaj klik koji ce mi resiti ovo, pa zato vas molim da mi pomognete.