sql - SQL 从另一个表中替换一个表中的值
问题描述
我有两个表,我想用 table2 列中的值替换 table1 列中的部分值。
为了更好地解释: 我想将表 2 中的列“名称”中的值放入表 1 中 ID 为 3-9 的行中的列“名称”中。
我在 Mysql 工作台和 MariaDB 中工作。
解决方案
最直接的方法是在SET
子句中使用子查询。
UPDATE table1
SET name = (SELECT t2.name
FROM table2 t2
WHERE t2.pid = table1.id)
WHERE id >= 3
AND id <= 9;
推荐阅读
- amazon-web-services - 如果通过变量,AWS Lex 不会识别响应
- python - 琐碎的 tkinter 按钮适用于 Python 3.5,最初在 Python 3.6、3.7 上无响应
- html - Lxml - 如何将所有出现的特定文本包装在标签中
- php - 如何使用不同的对象制作 Symfony 抽象类型?
- c# - 针对 DataTable 运行 SQL 查询
- c# - 模拟 CloudBlockBlob 并让它返回一个流
- angular - 如果表格有来自 api 的数据,如何显示表格,否则显示其他 div
- ios - 为什么我的 WKWebviews 在模拟器上工作,但无法在 iPad 上提取文件?
- jquery - 如何在使用 Jquery 插入之前检查特定的 html 元素是否已经存在
- php - 首次访问 codeigniter 站点被重定向到 root