如何将 SQL 记录中的一个字段的值更改为另一个表中的值?
Posted
技术标签:
【中文标题】如何将 SQL 记录中的一个字段的值更改为另一个表中的值?【英文标题】:How do I change the value of one field in SQL record to a value from another table? 【发布时间】:2022-01-15 22:00:15 【问题描述】:首先,如果这是一个愚蠢的问题,我很抱歉。我检查了类似措辞问题中的内容,例如“如何使用另一个表中的值更新一个表中的字段”,但内容似乎与我想要做的不匹配。
假设我有一个名为 site_users 的表:
user_id | login | password | user_id2 |
---|---|---|---|
2 | user | password | 1 |
7 | access | xyz | 2 |
11 | otherlogin | abc | 3 |
15 | somebody | defg | 4 |
22 | user | qwert | 5 |
然后我在同一个数据库中有很多其他表,其中有一些不同名称的列实际上与“site_users”表的“user_id”对应。没有关系集或类似的东西。我想将那些其他表的字段中的值更改为 user_id2。所以假设我有一个表:user_options:
admin_id | perms1 | perms2 |
---|---|---|
2 | 1 | 12139389 |
7 | 1 | 13232111 |
我想改成:
admin_id | perms1 | perms2 |
---|---|---|
1 | 1 | 12139389 |
2 | 1 | 13232111 |
我该怎么做?这是我第一次做任何事情,而不仅仅是使用一些正则表达式对文本进行简单的大规模更改:/
【问题讨论】:
【参考方案1】:如果我正确理解您的问题,您应该能够执行以下操作:table1 是***表格,table2 是您要更新的表格:
update table2 t set admin_id = (select user_id2 from table1 where user_id = t.admin_id)
【讨论】:
谢谢你!像魅力一样工作!以上是关于如何将 SQL 记录中的一个字段的值更改为另一个表中的值?的主要内容,如果未能解决你的问题,请参考以下文章
怎样将sql数据库中同一表中的一列数据更改为另外一列的数据?
如何将 true 或 false 的值更改为文本值类型 我正在检查整个表中的行 注意该表是数据表类型?
如何在后台将一个 iOS 应用程序的 NSString 对象的值更改为另一个 iOS 应用程序?