【问题标题】:How to join 2 or more tables with same column name every table如何在每个表中加入 2 个或多个具有相同列名的表
【发布时间】:2018-01-23 23:08:42
【问题描述】:

假设我有 2 张桌子 一、table1 带列

name
score1
score2

第二张桌子是

name
score1
score2

预期输出:

name
t1.score1
t1.score2
t2.score1
t2.score2

如果 name 列在两个表中具有相同的值,我可以使用 1 个查询来完成它。 以及如何在 php 中回显它?

感谢您的任何见解

【问题讨论】:

    标签: php mysql sql arrays


    【解决方案1】:

    这完全取决于您的 SQL 查询。使用以下将产生与您提供的列的结果。

    SELECT t1.name, t1.score1 as t1score1, t1.score2 as t1score2, t2.score1 as t2score1, t2.score2 as t2score2
    FROM table1 as t1
    INNER JOIN table2 as t2 ON t1.name = t2.name
    

    我如何在 php 中回显它?

    为了方便访问,您必须重命名列以具有不同的名称。这些可以在php中访问。

    【讨论】:

    • 很好地抓住了不同的列名,你的比我的好。我正在投票给你。 -jwolf
    • 哇,谢谢你的帮助,我现在在学校,放学后我会试试你的解决方案。希望它能解决我的问题
    • 哇,你救了我的命,非常感谢你的回答,我可以在不同的表上显示多个同名的列,谢谢
    【解决方案2】:

    您正在垂直列出所有列,因此我将您的预期输出作为一个简单的列列表:

    select a.name, a.score1, a.score2, b.score1, b.bscore2
    from table1 a
    inner join table2 b on b.name = a.name
    

    我希望这会有所帮助。

    【讨论】:

    • 感谢您的反馈,我真的很感激一切,希望它能解决我的问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-04
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 1970-01-01
    • 2013-04-19
    相关资源
    最近更新 更多