php - mysql更新两个表的查询

标签 php mysql ajax mysqli

我正在尝试使用如下所示的查询更新一个查询中的两个表:

$query = "UPDATE tblproducts, tblsideimages 
          SET tblproducts.prodCode='oj', tblsideimages.prodCode='oj' 
          WHERE tblproducts.prodCode='aj' 
              AND tblsideimages.prodCode='aj'";

如果 tblsideimages 中有这样的内容,则它可以工作,但如果 tblsideimages 没有内容,则它不起作用。

问题是我必须对其进行相应调整,因为 tblsideimages 中并不总是有内容。有时,用户只能添加插入到 tblproducts 中的数据。我怎样才能做到,如果 tblsideimages 中没有内容,它仍然适用于 tblproducts,如果 tblsideimages 和 tblproducts 都有内容,两者都会更新。谢谢!

最佳答案

没有办法(也是真正的原因)在一个查询中完成所有工作。所以只需将其分成:

UPDATE tblproducts SET prodCode='oj' WHERE prodCode='aj' 

UPDATE tblsideimages SET prodCode='oj' WHERE prodCode='aj'

更少的查询并不意味着“性能更高”,因此永远不要遵循将所有内容都放入一个查询中的想法。

关于php - mysql更新两个表的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9611975/

相关文章:

php - 如何通过 AJAX 使用 formdata 发送更多数据

javascript - 如何在页面加载时打开外部存储模式

PHP:通过引用传递给函数的数组?

php - 内联 SQL 和从 View 中选择之间的区别

php - Codeigniter + ajax(jQuery) session 问题

php - 使用 PHP 和 jQuery 进行 ReCaptcha 验证

php - 以 POST 请求发送删除操作

mysql - 如何使用 join 和 group by 为同一列检索具有不同计算值的 sql 结果?

MySQL SUM 返回错误值

php - mysql 中截断的 DECIMAL 值(小数点后 30 位)