我有一个包含多个表的数据库,所有查询都可以工作,但是我想拥有一个新表,但无法成功使其工作。
两个表“ vins”和“ producteurs”,在我的“ vins”表中有一个外键IDproducteur。
我需要从一个excel数据源更新``vins''表,在该数据中,数据不一定总是准确地写入,并且需要更改``vins''表的某些记录的股票价值。p.nomproducteur和V.annee和v.nom是参数,但为了测试我设置了硬值。
我的查询如下:
UPDATE vins AS v
JOIN producteurs p
ON ( p.IDproducteur = v.IDproducteur AND p.nomproducteur LIKE "Charles" )
SET stock = 10
WHERE v.nom LIKE "Symphonie" AND v.annee = 2013
我有两条记录,其中生产者是“ Charles”,而V.nom是Symphonie,其中annee = 2010,而2013年是我。phpMyadmin中没有错误,但是即使更改某些命令顺序,查询也没有结果。
我想做的事是不可能的吗?
最佳答案
将条件p.nomproducteur LIKE "Charles"
放在WHERE子句中:
UPDATE vins v
JOIN producteurs p ON p.IDproducteur = v.IDproducteur
SET stock = 10
WHERE
v.nom = "Symphonie" AND v.annee = 2013 AND p.nomproducteur = "Charles"
在这种情况下,也不需要
LIKE
,只需一个简单的=
就可以了。