Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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根据一些匹配字段和一些不匹配字段查找重复项_Mysql - Fatal编程技术网

MySQL根据一些匹配字段和一些不匹配字段查找重复项

MySQL根据一些匹配字段和一些不匹配字段查找重复项,mysql,Mysql,我正在尝试创建一个游戏光盘的MySQL查询,根据一些值相同,一些值不相同来查找一些重复项 我需要字段“名称”、“光盘”、“平台”、“区域”相同。 但我还需要字段“版本”不同 我已经尝试了许多查询来实现这一点,比如下面的一个查询,但似乎没有一个能够按照预期工作 SELECT * FROM media.amps_2000_box_a INNER JOIN (SELECT * FROM media.amps_2000_box_a GROUP BY

我正在尝试创建一个游戏光盘的MySQL查询,根据一些值相同,一些值不相同来查找一些重复项

我需要字段“名称”、“光盘”、“平台”、“区域”相同。 但我还需要字段“版本”不同

我已经尝试了许多查询来实现这一点,比如下面的一个查询,但似乎没有一个能够按照预期工作

SELECT *
FROM media.amps_2000_box_a
   INNER JOIN (SELECT *
           FROM   media.amps_2000_box_a
           GROUP  BY name
           HAVING COUNT(name) > 1) dup
       ON media.amps_2000_box_a.name = dup.name and media.amps_2000_box_a.disk = dup.disk and media.amps_2000_box_a.format = dup.format and media.amps_2000_box_a.region = dup.region and media.amps_2000_box_a.version<> dup.version
 order by dup.name;
有人能帮我解决这个问题吗

提前谢谢


slick

也许我遗漏了什么,但解决方案似乎很简单:

SELECT   DISTINCT
         amps1.name,
         amps1.disk,
         amps1.platform,
         amps1.region
FROM     media.amps_2000_box_a amps1
JOIN     media.amps_2000_box_a amps2
  ON     amps1.name = amps2.name
 AND     amps1.disk = amps2.disk
 AND     amps1.platform = amps2.platform
 AND     amps1.region = amps2.region
 AND     amps1.version <> amps2.version
ORDER BY amps1.name;

这个怎么了?我假设这个查询没有正确处理这些数据?除了阅读并提供文本格式的示例数据和预期结果之外,我认为这就成功了!谢谢我自己对加入MySQL还是有点陌生。