在一列中选择不重复的值

时间:2015-02-11 19:23:51

标签: mysql

我的建设:

INSERT INTO ... ( SELECT ... FROM .. JOIN ... ON ... WHERE ... ORDER BY ... )

简短说明:我使用Select将2个表(使用JOIN)中的数据插入到另一个表中。 Select的结果类似于(按顺序排列):

col_a  |  col_b  |  col_c |        col_d

1111       44         xxx            yyy
1111       66         xxx            yyy
2222       12         aaa            bbb
3333       55         ccc            ddd
3333       68         xxx            yyy

如果行是重复的(col_c),我想在我的表中插入第一个匹配的行。

结果示例应如下所示:

col_a  |  col_b  |  col_c |        col_d

1111       44         xxx            yyy
2222       12         aaa            bbb
3333       55         ccc            ddd

2 个答案:

答案 0 :(得分:2)

使用GROUP BY功能

(SELECT ... FROM .. JOIN ... ON ... WHERE ... ORDER BY ... GROUP BY [col_c])

答案 1 :(得分:0)

我想我找到了解决方案。我为表中的col创建了unique key。之后INSERT IGNORE正在满足我的需要:)