Задать вопрос
@Quotro
'Фанат'*'перфекционист'

Запрос: как связать данные в идентификаторах?

Стоит задача - выявить и удалить те опции атрибутов, которые не используются в описании товаров.

Есть две таблицы:

Таблица А
option_id_ _ _ _ _ _ _ _ _ _attribute_id
значение 1_ _ _ _ _ _ _ _ значение a
значение 2 _ _ _ _ _ _ _ _значение a

Таблица В
attribute_id_ _ _ _ _ _ _ _ _ _ entity_id_ _ _ _ _ _ _ _ _ _ value
значение a_ _ _ _ _ _ _ _ _ _ 1111_ _ _ _ _ _ _ _ _ __ _ _ значение 1,значение 2

Вижу такую проблему - значение b.value состоит из множества a.option_id
Непонятно, как можно связать данные. Подскажите, в какую сторону копать?

Так как нужно найти option_id, которых нет в таблице В, собираюсь использовать RIGHT JOIN
  • Вопрос задан
  • 186 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@edb
SQL
если надо проверить наличие или отсутствие записи, то надо именно это и делать:
where not exists (select * from Таблица В where ... тут уже досочинияете сами)
а right или left join практически то же самое. можно и с ними, но зачем?
Ответ написан
@Quotro Автор вопроса
'Фанат'*'перфекционист'
Оказалось, что ЦМС создает индексную таблицу, где option_id хранятся по одному (должны же они откуда-то браться). А у value, которое я хотела первоначально использовать, еще и тип данных - текст.
В общем, враг (неиспользуемые опции) пойман и обезврежен
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы