如何从表格中选择不同的值?

时间:2018-07-28 04:22:40

标签: sql sql-server

我正在使用SQL Server数据库,并且有一个名为companiesData的表,该表具有三列:id, name, projects我想从idname获取值,而没有重复的值。

表的内容:

| id      | name      | project      |
| 1       | Company A | Project A    |
| 2       | Company B | Project A    |
| 3       | Company B | Project B    |
| 4       | Company A | Project B    |

如果我写:

select distinct name from companiesData;

查询返回:

| name      |
| Company A |
| Company B |

但是就像我在一开始所说的,我想要来自同一表的两列的数据(我现在只有一个)。因此,我编写下一个查询以获取数据:

select distinct id, company from companiesData;

它返回:

| id      | name      |
| 1       | Company A |
| 2       | Company B |
| 3       | Company B |
| 4       | Company A |

所以,我也尝试过:

select id, company from companiesData group by id, company;

但是这将返回第二个查询的相同数据。在其他问题中,此问题的答案是使用distinctgroup by,但这对我不起作用。

还有其他方法可以获取此数据吗?我在查询中错了吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

因此,您希望“公司A”在结果中出现一次,并带有其中一个ID,而您不在乎哪个?怎么样:

select min(id), company from companiesData group by company