这是我的表格的相关列
bia_panels
(id, sign_id, value, project_id
)bia_clients
(id, name
)bia_projects
(id, name, client_id, city_id
)bia_cities
(id, name
)
我正在尝试更新bia_panels.project_id
到bia_projects.id
where bia_panels.value = bia_clients.name
和 thepanels.project_id =000
并且值不是空白当然我必须使用多个连接才能到达那里
-- UPDATE
SELECT * FROM
`bia_panels` AS t1
JOIN bia_clients AS t2
ON t1.value = t2.name
JOIN bia_projects AS t3
ON t2.id = t3.client_id
-- SET t1.project_id = t3.id
-- WHERE t1.value<>'' AND t1.project_id = '000'
WHERE t1.value <>''
问题是这没有给我正确的结果(我的项目 ID 在连接中的某处不正确,返回多个结果,因此它们中断
我知道一旦我能够正确选择部分,我就可以使用更新
例如,可能有多个面板,value=client.name
但并非所有面板都是相同的项目 ID