php - 从两个表中各选择一条记录。通过将另一个值与新表匹配来更新一个值

标签 php mysql sql

我有三个表,例如table1,table2,table3..

我需要一个 mysql 解决方案。

table1,table2中选择table1.val1,table2.val1并更新返回值,例如..

更新table3设置value=table1.val1,其中value=table2.val1

我的查询不起作用..

update db1.proprietor_profile_tbl as c3 set c3.PPROFILE_profileid=(select c2.COM_id from db2.company_profile_tbl as c1,db1.company_profile_tbl as c2 where c1.COM_name=c2.COM_name and COM_profiletype!=4) where c3.PPROFILE_profileid=c1.COM_id

“where 子句”中存在未知列“c1.COM_id”

最佳答案

UPDATE  table3 t3
        INNER JOIN table2 t2
            ON t3.pcomid = t2.comid
        INNER JOIN table1 t1
            ON t1.name=t2.name
SET     t3.pcomid = t1.comid

关于php - 从两个表中各选择一条记录。通过将另一个值与新表匹配来更新一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21348172/

相关文章:

php - 获取电子邮件附件的表单元素

php - 使用未定义的常数触点-假定'contacts'错误

php - 在 PHP 中过滤 JSON 数据

mysql - 如何在 mysql 中转换和使用 varchar 数据类型作为日期时间

mysql - 在 WHERE 条件下的 SQL 查询

mysql - SQL 列值为空,搜索过滤器错误

PHP 代码无法运行

php - 如何诊断本地网络上间歇性缓慢的 PHP 到 MySQL 连接速度?

php - Doctrine 使用内部 Join 启动过多查询

c# - 如何对随时间变化的表格数据进行建模并能够回溯到任何点