【问题标题】:Mysql select username by userId for each row of other tableMysql通过userId为其他表的每一行选择用户名
【发布时间】:2015-04-04 21:07:00
【问题描述】:

我有一张包含论坛主题的表格。 该主题表中的每一行都有一个带有 starter_id 的列 starter_id 是用户表中某行的userId

我想选择主题表中的所有行,并想从主题启动器中获取用户数据。

所以topics表中的starter_id列就是topic starter的userId。 我想要用户名,而不是在 eash 结果行中获取 userId。

我希望你明白我想要什么。

编辑

表格主题

  • 身份证
  • 姓名
  • starter_id

用户

  • 身份证
  • 用户名

我想选择所有主题。 当我这样做时,我会从该表中获取所有行,但其中包含 starter_id。 我想在我从 topics 中选择的每一行中显示属于 starter_id 的用户名。

【问题讨论】:

  • 能否请您发布您的表名和列名?

标签: mysql join


【解决方案1】:

你可以为这个东西做一个加入

select 
t.*,
u.username
from topics t
join user u on u.userId = t.starter_id

【讨论】:

    【解决方案2】:

    如果您的表是带有“started_id”列的“主题”和带有“id”列和“用户名”列的“用户”

    那么查询应该是这样的:

    select started_id, username
    from topics join users on started_id = users.id
    

    【讨论】:

      猜你喜欢
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-15
      • 2016-06-15
      • 2018-03-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多