SQL запрос с выборкой из нескольких таблиц

201
04 декабря 2017, 14:49

Зжравствуйте. Подскажите пожалуйста, каким образом можно сформировать следующий запрос:

  • вставить поле attribute_id = 101 в таблице oc_product_attribute со значением Черный в поле text При таких условиях:
  • поле language_id таблицы oc_product_attribute = 1
  • в таблице oc_product_attribute отсутствует поле attribute_id со значением 101 (нужно отобрать product_id, которым вообще не присвоено attribute_id = 101)
  • поле name таблицы oc_product_description содержит слово %черн% (может быть как вначале, так и в середине названия)

общий параметр в обеих таблицах: product_id

Цель данного запроса: отобрать все товары, которым вообще не присвоен атрибут "Цвет", а в названии которых встречается слово "..черн.." - добавить всем таким товарам атрибут "Цвет" со значением "Черный"

скрин таблицы oc_product_attribute http://prntscr.com/hi15l8 скрин таблицы oc_product_description http://prntscr.com/hi15vz

Answer 1

Я не понял насчет поле language_id таблицы oc_product_attribute = 1. Без учета этого language_id запрос может выглядеть так:

INSERT INTO oc_product_attribute
(product_id, attribute_id, text)
(
SELECT a.product_id, 101, 'черный'
FROM oc_product_attribute a
JOIN oc_product_description d ON a.product_id = d.product_id
WHERE d.name LIKE '%черн%' 
AND NOT EXISTS 
(SELECT null FROM oc_product_attribute e WHERE e.attribute_id = 101 AND e.product_id = a.product_id)
GROUP BY a.product_id
)
READ ALSO
SQL запрос из нескольких таблиц

SQL запрос из нескольких таблиц

Добрый деньВопрос такой

224
Обновить дату в базе (mysql) через php

Обновить дату в базе (mysql) через php

Не понимаю в чем проблема, но дата никак не записывается в базуТип поля datetime

223
Улучшает ли auto increment primary key работу MySQL с таблицами?

Улучшает ли auto increment primary key работу MySQL с таблицами?

ЗдравствуйтеНедавно узнал от одного человека, что использование auto increment primary key улучшает работу MySQL с таблицами, это так? Или правильным вариантом...

173
panic: Error 1054: Unknown column 'helloman' in 'field list'

panic: Error 1054: Unknown column 'helloman' in 'field list'

Подключаюсь к БД и пытаюсь внести значения в таблицу bot_api значения 1337, helloman, DavidКод:

197