我知道那里有类似的问题,但我在其中找不到这个特殊情况。如果有人知道这个问题的答案,请给我一个链接。否则就到这里了。
我有一个表,其中有两个我感兴趣的字段 - 代码和 id。这些都不是唯一的,尽管有一个 company 字段与 id 字段结合以构成主键。
我需要一份所有代码和名称的列表,这些代码和名称具有多个与同一代码相关联的名称。所以如果我的约会是这样的:
| code | name | company |
+---------------+---------------+----------------------------------------------------+
| 00009 | name | 1 |
| 00009 | name | 2 |
| 00009 | name | 3 |
| 00009 | name | 4 |
| 00009 | diff name | 1 |
| 00014 | Foo | 2 |
| 00014 | foo | 3 |
| 00014 | foo | 4 |
| 00014 | foo | 5 |
| 00014 | foo | 6 |
| 00015 | barbaz | 1 |
| 00015 | barbaz | 2 |
| 00015 | barbaz | 3 |
| 00015 | barbaz | 4 |
| 00015 | bar baz | 5 |
| 00017 | foo | 1 |
| 00018 | bar | 1 |
我需要我的结果也看起来像这样:
| code | name |
+---------------+-------------------------------------------------------------------+
| 00009 | name |
| 00009 | diff name |
| 00014 | Foo |
| 00014 | foo |
| 00015 | barbaz |
| 00015 | bar baz |
我尝试了几件事,包括
SELECT DISTINCT t1.code, t1.name from items t1
inner join (select t2.code from items t2 group by t2.name ) t2
on (t1.code = t2.code)
group by t1.code order by t1.code;
这当然是错的。感谢您的任何见解!
[编辑] 我忘了提一个细节。我只想列出给定代码具有多个唯一名称条目的结果。我已经更新了初始数据(这不会改变我想要的结果)。
[编辑错别字]