[英]MYSQL UPDATE SELECT from Two Tables
我在這里使用選定的答案 ,嘗試制作一個MySQL查詢,該查詢選擇列和設置值,但得到的是“每個派生表必須具有自己的別名”。 我只有兩個表:matrix_swfl_res和RLN分別定義為e和d。 我想念什么?
UPDATE (SELECT e.MLSNumber, d.MLSNumber
FROM matrix_swfl_res e, RLN d
WHERE e.MLSNumber = d.MLSNumber)
SET e.RSLN = d.RSLN
鏈接答案的第二部分是您所需要的-類似
UPDATE matrix_swfl_res e
INNER JOIN RLN d ON e.MLSNumber = d.MLSNumber
SET e.RSLN = d.RSLN
如果您認為答案已鏈接,則在要更新表時必須進行聯接
這里的mysql錯誤是因為
(SELECT e.MLSNumber, d.MLSNumber
FROM matrix_swfl_res e, RLN d
WHERE e.MLSNumber = d.MLSNumber)
當您編寫它時,它被視為派生表,就像您要更新此派生表一樣。
如果我了解您想要的內容:您想用以前完成的選擇來更新表A,這是您需要做的:
UPDATE A
INNER JOIN (SELECT e.MLSNumber, d.RSLN
FROM matrix_swfl_res e
INNER JOIN RLN d ON e.MLSNumber = d.MLSNumber ) as Q
ON A.MLSNumber= Q.MLSNumber)
SET A.RSLN = Q.RSLN
我沒有所有表格的詳細信息,但我希望通過此示例可以使它更清晰
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.