Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何删除重复的SQL结果?_Mysql_Database_Sql Order By_Inner Join_Duplicate Removal - Fatal编程技术网

Mysql 如何删除重复的SQL结果?

Mysql 如何删除重复的SQL结果?,mysql,database,sql-order-by,inner-join,duplicate-removal,Mysql,Database,Sql Order By,Inner Join,Duplicate Removal,我正在从一个名为“guildmembers”的表中提取access,guildid,name …以及另一个名为玩家的表中的id、级别、玩家等级 下面是我的SQL语句: SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, players.level, players.playerclass FROM guildmembers, players ORDER BY guildmember

我正在从一个名为“guildmembers”的表中提取access,guildid,name

…以及另一个名为玩家的表中的id、级别、玩家等级

下面是我的SQL语句:

SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, players.level, players.playerclass FROM guildmembers, players ORDER BY guildmembers.name, players.playerclass 选择guildmembers.access、guildmembers.guildid、guildmembers.name、players.id、players.level、players.playerclass 来自公会会员、玩家 按公会成员排序。姓名,玩家。玩家等级 这是回报

这是我需要的


你知道怎么做吗?

你需要做的是一个join语句。目前,您正在告诉sql只显示两个表中的所有Resultl。您希望只在结果匹配的地方显示结果,为此,您使用join语句

SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, players.level, players.playerclass
FROM guildmembers join players on guildmembers.pid=players.id
ORDER BY guildmembers.name, players.playerclass
guildmembers.pid
players.id
是这两个表中的公共字段,因此可以在这两个表中加入表

为了便于理解和理解,两个表中都有一个共同的字段名。然后,您可以使用它来加入,这更有意义


希望这对您有所帮助。

您需要做的是一个join语句。目前,您正在告诉sql只显示两个表中的所有Resultl。您希望只在结果匹配的地方显示结果,为此,您使用join语句

SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, players.level, players.playerclass
FROM guildmembers join players on guildmembers.pid=players.id
ORDER BY guildmembers.name, players.playerclass
guildmembers.pid
players.id
是这两个表中的公共字段,因此可以在这两个表中加入表

为了便于理解和理解,两个表中都有一个共同的字段名。然后,您可以使用它来加入,这更有意义


希望对您有所帮助。

您的SQL语句不正确,请重试

SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, 
players.level, players.playerclass from guildmembers left join players on guildmembers.pid = players.id order by guildmembers.name, players.playerclass

您的SQL语句不正确,请重试

SELECT guildmembers.access, guildmembers.guildid, guildmembers.name, players.id, 
players.level, players.playerclass from guildmembers left join players on guildmembers.pid = players.id order by guildmembers.name, players.playerclass

令人惊叹的!成功了。真不敢相信我竟然忘了加入。这是漫长的一天。谢谢斯马杰!:)公共字段名在我的改进列表中。(例如,在我的TODO.txt文件中:“为了一致性,将guilds表中的gid更改为guildid。”)太棒了!成功了。真不敢相信我竟然忘了加入。这是漫长的一天。谢谢斯马杰!:)公共字段名在我的改进列表中。(例如,在我的TODO.txt文件中:“将guilds表中的gid更改为guildid以保持一致性。”)