@quake4fun

Как сделать выборку в MySQL из двух таблиц с исключением совпадений во второй?

Имеется две таблицы, заказы (orders) и товары из заказов (order_items) со связью с таблицей заказов по полю order_id
Как выбрать все заказы, товары в которых не содержат в названии (title) некоторые слова (пример: карандаш красный, ручка красная)?
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
SELECT ...
  FROM `orders`
  WHERE `id` NOT IN (
    SELECT `order_id`
    FROM `order_items` 
    WHERE `item_id` IN (
      SELECT `id`
      FROM `items`
      WHERE `name` LIKE '%красн%'
    )
  )
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@melnikov_m
SELECT * FROM orders LEFT JOIN order_items ON order.id = order_items.order_id WHERE order_items.title NOT LIKE '%карандаш красный%' вроде так
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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