在SQL server中的多列中应用distinct



我试图只通过一列(消息)获得不同的结果。我试过

SELECT DISTINCT 
  [id], [message]
  FROM Example table
GROUP BY [message]

但它并没有显示出想要的结果。请告诉我该怎么做?

示例表:

  id | Message     | 
    --  ------------
     1 | mike       | 
     2 | mike       |
     3 | star       | 
     4 | star       |  
     5 | star       | 
     6 | sky        |
     7 | sky        | 
     8 | sky        |  

结果表:

id | Message     | 
--  ------------
 1 | mike       | 
 3 | star      |
 6 | sky       | 

按要唯一的列分组,并在另一列上使用聚合函数。您希望每条消息的id最低,因此请使用MIN()

select min(id) as id,
       message
from your_table
group by message

最新更新