sql - 如何使用第三个表中的 ID 更新第二个表内容中的 MSSQL 表值以匹配记录?

标签 sql sql-update

我需要使用 CFPL.SVALUE 的值更新表 CSPM.TRACT,其中 CSPM.ID = PM.PMPERMITID AND CSPM.TRACT IS NULL.

以下是三个表之间的联接: PM LEFT OUTER JOIN CFPL INNER JOIN CSPM ON CFPL.GCUSTOMFIELDPICKLISTITEM = CSPM.TRACTS ON PM.PMPERMITID = CSPM.ID

最佳答案

试试这个 -

 UPDATE CSPM
SET CSPM.TRACT = COALESCE (CSPM.TRACT, CFPL.SVALUE)
FROM CSPM
JOIN PM ON CSPM.ID = PM.PMPERMITID 
LEFT OUTER JOIN CFPL ON CFPL.GCUSTOMFIELDPICKLISTITEM = CSPM.TRACTS 

关于sql - 如何使用第三个表中的 ID 更新第二个表内容中的 MSSQL 表值以匹配记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59547566/

相关文章:

sql - 我们可以更新 SQL Server 中提供的系统表吗?

mysql - 从 MySQL Workbench 更新 BLOB

MySQL 在重复更新多个条件时插入

mysql更新列删除最后一个字

php - 无法弄清楚我的 SQL 语法有什么问题

MySQL:用另一个表中的 COUNT 更新表?

创建新记录时,Mysql 偏移量和限制给出的结果不明确

Sql Server 唯一值

sql - 在 Postgres 和 SQL Server 中为日期添加一天

sql-server - 如何在一个查询中更新 2 个表