从2个表中加入查询 - 多个结果

时间:2017-04-30 22:47:52

标签: mysql sql-server join

有人可以告诉我如何正确处理从2个表中收集信息的查询,我想我已经弄明白了,直到我添加了更多记录。请查看下面的图片:enter image description here

(最后一条记录中不应该有“Thomas Murray”这个名字)

然后是我正在处理的查询:

"select a.*, b.forenames, b.surname FROM playerSkills a, playerdb b GROUP BY sheetNo"

我希望做的是从playerSkills数据库中收集所有数据(它确实如此)并且仅从第二个数据库(playerdb)中提取与playerID匹配的名称但是因为我想返回多个结果所以我不知道该怎么办,因为它返回整个列,只是将一个名称粘贴到每个字段中。

虽然我确定要在这里插入JOIN,但我不确定是哪一个或根本不是。

我对SQL没有经验,但试图绕过它。我已经尝试了JOIN子句,但可能由于语法原因而无法实现。

如何将名称加入playerID,以便它们出现在相应的字段中?

1 个答案:

答案 0 :(得分:0)

您需要加入列。 。 。正确的join语法:

select ps.*, p.forenames, p.surname
FROM playerSkills ps JOIN
     playerdb p
     ON ps.playerId = p.playerId;

注意:

  • 您的查询不需要GROUP BY
  • 您的查询确实需要JOIN条件。
  • 使用表别名的荣誉。它们应该是表名的缩写。
  • 您希望始终使用显式 JOIN语法。 {em>在<{1}}子句中没有逗号。