Пожалуйста, помогите мне разобраться в этом, так как я пробовал все с этого форума, но до сих пор не нашел решения.
Ну, у меня две таблицы:
- цены
- Производители
Я хочу изменить значения двух полей, которые находятся в таблице. И я просто дам конкретные значения этим.
Поля:
- prices.override(в котором я хочу дать значение 0) и
- prices.product_discount_id (в котором я хочу дать значение 66)
НО Я хочу изменить поля ТОЛЬКО для производителя с ID 31.
Итак, я сначала проверяю, что INNER JOIN отлично работает.
SELECT manufacturers.manufacturer_id,
prices.product_id,
prices.product_price,
prices.override,
prices.product_discount_id
FROM manufacturers
INNER prices
ON manufacturers.product_id=prices.product_id
AND manufacturers.manufacturer_id=31;
Но когда я пытаюсь обновить два поля, я не знаю, как это сделать. Например, я попробовал это, но это не сработало:
UPDATE prices
SET prices.override=1
FROM
INNER JOIN prices
ON manufacturers.product_id=prices.product_id
AND manufacturers.manufacturer_id=31;
Я также пробовал это:
UPDATE prices
SET prices.override=1,
INNER JOIN manufacturers
ON prices.virtuemart_product_id = manufacturers.virtuemart_product_id
AND manufacturers.manufacturer_id=31;
Что я сделал неправильно? Обычно появляется сообщение об ошибке:
# 1064 - У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с ценами "FROM jos_virtuemart_product_prices" INNER JOIN jos_virtuemart_product_man в строке 3
Я читал что-то для псевдонима, но все равно никакого результата.
Любая помощь будет оценена!