Создать SQL запрос Есть решение

Помогите создать Sql запрос для фильтра. Чтоб в родительской категории с ID и под категориях использовались определённый набор фильтров. Что то типа этого

UPDATE `shop_category` SET filter = 'price,7,4,3,14,32,35,12,34'

Схема такая

  1. Родительская категория
    2. Под категория
        3. Под под категория
    2. Под категория
        3. Под под категория

6 ответов

  • 1
    Eugen Nichikov 24 марта 2020 17:40 # Решение

    SET @category_id = 3;
    SELECT @left_key := left_key, @right_key := right_key FROM shop_category WHERE id = @category_id;
    UPDATE `shop_category` SET filter = 'price,7,4,3,14,32,35,12,34' WHERE left_key >= @left_key AND right_key <= @right_key;

    • +1
      partner2000 partner2000 24 марта 2020 20:52 #

      Евгений спасибо Вам большое. Завтра попробую. Весь этот запрос (id3) рассчитан на последний уровень категорий? 

      • +1
        Eugen Nichikov Eugen Nichikov 24 марта 2020 21:14 #

        На любой уровень. Обновится категория с id = 3 и все её дочерние.

  • 1
    partner2000 25 марта 2020 11:21 #

    Евгений спасибо. То что надо. Это решение моей проблемы

  • 1
    partner2000 25 марта 2020 13:09 #

    Евгений задам ещё один вопрос. Как с помощью SQL запроса `shop_category_params` поставить для всех категорий "галочку" Посетители сайта могут выбирать порядок сортировки. Это вроде 'enable_sorting'

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите