MySQL:当值相同时选择哪一行

时间:2011-07-15 03:54:40

标签: mysql

好的,所以我正在研究一个更大的SQL语句,但是我遇到了一个问题,我似乎无法在其他地方找到解决方法。如果我简化了我现有的内容,请选择以下表格:

    col_1     |     col_2     |      col_3
     100      |    default    |      Hello
     500      |    default    |      World
     500      |    override   |      Other

我想从col_1中选择具有唯一值的所有行,但是当我遇到重复项时,我需要使用col_2来确定要使用哪些重复项。

因此,如果我从上面选择col_3值,我会得到'Hello'和'Other'。

我知道DISTINCT不会得到我想要的东西而且我尝试了一些分组和排序方法,但因为首先计算分组,所以它似乎不是答案。

1 个答案:

答案 0 :(得分:1)

您可以在子查询中使用ORDER BY,然后GROUP BY

SELECT * FROM 
       (SELECT * FROM table ORDER BY col_1 DESC) 
GROUP BY col_2