首页 > 数据库 > mysql教程 > 如何根据表 B 中匹配的用户名更新表 A 列?

如何根据表 B 中匹配的用户名更新表 A 列?

Mary-Kate Olsen
发布: 2025-01-15 07:40:46
原创
931 人浏览过

How to Update Table A Columns Based on Matching Usernames in Table B?

根据表 B 中匹配的用户名更新表 A

本指南演示如何使用 table_a 中的数据更新表 table_b 中的列,并根据常见的“user_name”列匹配行。 目标是分别使用 column_a_1column_a_2table_a 的值填充 column_b_1 中的 column_b_2table_b,以匹配用户名。

SQL 解决方案:

以下 SQL 语句有效地实现了此更新:

<code class="language-sql">UPDATE table_a
SET
    column_a_1 = (SELECT b.column_b_1 FROM table_b b WHERE b.user_name = table_a.user_name),
    column_a_2 = (SELECT b.column_b_2 FROM table_b b WHERE b.user_name = table_a.user_name)
WHERE
    EXISTS (SELECT 1 FROM table_b b WHERE b.user_name = table_a.user_name);</code>
登录后复制

此查询使用子查询从 table_b 中获取适当的值,并将它们应用到 table_a 中的相应行。 EXISTS 子句确保仅更新两个表中具有匹配用户名的行,从而防止在 table_a 中存在用户名但 table_b 中不存在用户名时出现错误。 使用别名(例如 b 代表 table_b)可以提高可读性。

以上是如何根据表 B 中匹配的用户名更新表 A 列?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板