Не строит дерево категорий

274
09 февраля 2017, 03:09

Всем привет, у меня возникла проблема при выборе дерева категорий. Вот запрос, который я посылаю.

SELECT DISTINCT category.id, category.parent_id, category.name 
FROM category 
    JOIN category_closure ON category.id = category_closure.descendant 
WHERE category_closure.ancestor > 1;

Данный запрос работает только в Mysql 5.7, а в Mysql 5.6 не работает. Обновить Mysql не вариант Ответ Mysql 5.7 Ответ Mysql 5.6 База

Answer 1

Ваш запрос(в основном из-за DISTINCT) ничем не отличается от:

SELECT category.id, category.parent_id, category.name 
FROM category 
WHERE category.id > 1
Answer 2

В общем проблема была в том, что нужно было выбирать не обычным JOIN, а LEFT JOIN

SELECT DISTINCT category.id, category.parent_id, category.name 
FROM category 
LEFT JOIN category_closure ON category.id = category_closure.descendant 
WHERE category_closure.ancestor > 1;
READ ALSO
Как изменить welcome.blade.php через форму в admin panel?

Как изменить welcome.blade.php через форму в admin panel?

Хочу добавить фичу на свой сайт

266
Использование use

Использование use

Допустим, есть класс Mysql который должен быть в пространстве lib

310
Что работает быстрее: if+include или просто if?

Что работает быстрее: if+include или просто if?

ЗдравствуйтеПодскажите, какой код будет работать быстрее?

261