![](/img/trans.png)
[英]Is there any possibility to replace MySql table name in query with result of another query
[英]Mysql query to replace name based on id of another table
我有兩個表客戶端和well_names
表客戶
id,name
1 ABC
2 TEST
3 XYZ
表well_names
id,operator
1 ABC
2 ABC
3 ABC
4 TEST
5 TEST
6 XYZ
7 XYZ
我想從客戶端表中選擇ID,並在well_names表中的操作符列上進行更新。
預期產量
表well_names
id,operator
1 1
2 1
3 1
4 2
5 2
6 3
7 3
此查詢將起作用:
SELECT a.id, b.id
FROM clients as a LEFT JOIN well_names as b ON a.name = b.operator
select w.id as id,
c.id as operator
from join tbl_well w
inner tbl_client c
on c.operator = w.operator
您可以將subquery
與update語句一起使用:
update well_names w
set operator = (select c.id from Clients c where c.name = w.operator);
UPDATE well_names WN
INNER JOIN Clients C ON WN.operator = C.operator
set WN.operator = C.id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.