簡體   English   中英

MySQL更新列,其值來自第二個表

[英]MySQL update column with value from second table

我想用一個ID替換一個表中的用戶名,這需要從另一個表中引用。 例如:

我有表A看起來像:

ID  |  Key  |  Value
---------------------
1   |  name |  Bob
2   |  name |  Bob
3   |  name |  John

和表B:

ID  |  Name
--------------
1   |  Bob
2   |  Rick
3   |  John

我想讓表A看起來像:

ID  |  Key  |  Value
---------------------
1   |  name |  1
2   |  name |  1
3   |  name |  3

我如何在MySQL中構建一個查詢來執行此操作?

一個問題是數據類型。 將數字存儲為字符串是不明智的。 但是,您可以獲得您想要的值:

update a join
       b
       on a.value = b.name
    set a.value = b.id;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM