php - 在 PHP 中 SELECT 语句返回 true,用它的主键更新另一个表

标签 php mysql sql sql-update

我有两个表(artartlocation),它们具有三列(seriesstyle位置)共同点。我想要做的是确定两个表中的所有三个字段是否完全匹配,然后 UPDATE 其中一个表(作为外键)与另一个表的主键。

这是我为确定是否存在匹配而运行的查询:

SELECT * FROM 'artlocation'  
  JOIN 'art' ON artlocation.series = art.series
  WHERE artlocation.style = art.style
    AND artlocation.location = art.location;

我想做的是从“artlocation”表的任何匹配中获取主键并更新“art”表的外键字段。但我想不通:(

请帮忙...提前致谢!!

最佳答案

如果我理解你的问题,你想要一个多表 UPDATE .您可以在 UPDATE

的表部分使用 JOIN
UPDATE art
  JOIN artlocation ON art.series = artlocation.series 
                  AND art.style = artlocation.style 
                  AND art.location = artlocation.location
  SET art.location = artlocation.id

关于php - 在 PHP 中 SELECT 语句返回 true,用它的主键更新另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6534017/

相关文章:

mysql - 按 2 个值之间的平均评分排序

sql - MySQL中删除表主键

javascript - Json 语法有效,但 HighChart 无法正确显示系列

mysql 查询改进与连接问题

mysql - 使用事务将巨大的 CSV 文件导入 MySQL

mysql - 来自 ManyToMany 关联的连接表是否可用于查询?

PHP Composer : what is BootStrap process?

php - 在没有数据库的情况下管理动态内容的最佳方式

php - 更改列排序规则

java - DB2 控制中心中的操作是否有可能阻止 java 代码中的查询?