Jam*_*rzs 23 mysql sql database distinct distinct-values
我有一个mysql表,看起来像这样:
1 value1 value2 3534
2 value1 value1 8456
3 value1 value2 3566
4 value1 value3 7345
5 value2 value3 6734
Run Code Online (Sandbox Code Playgroud)
我需要一个查询来选择具有不同列2和3的所有行,例如,我希望此示例的输出如下所示:
1 value1 value2 3534
2 value1 value1 8456
4 value1 value3 7345
5 value2 value3 6734
Run Code Online (Sandbox Code Playgroud)
我已经找到了一些关于如何做的样本,但它们都在每个列上单独选择不同的.
Fah*_*kar 30
更好的是你用它来对抗上面.
SELECT id, col2, col3, col4
FROM yourtable
GROUP BY col2, col3;
Run Code Online (Sandbox Code Playgroud)
我之所以说是因为使用CONCAT,我在这种情况下没有得到理想的结果.第一个查询返回5行但是CONCAT返回4行,这是INCORRECT.
希望你明白我的意思.
假设表中的列是(id,col2,col3,col4).
SELECT DISTINCT(CONCAT(col2, col3)) as "dummy column", id, col2, col3, col4
FROM yourtable
GROUP BY CONCAT(col2, col3);
Run Code Online (Sandbox Code Playgroud)
SELECT id, col2, col3, MIN(col4)
FROM yourtable
GROUP BY col2, col3;
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 16
假设第一列是唯一的,您可以这样做:
SELECT id, col2, col3, col4
FROM yourtable
WHERE id IN
(
SELECT MIN(id)
FROM yourtable
GROUP BY col2, col3
)
Run Code Online (Sandbox Code Playgroud)
看到它在线工作:sqlfiddle
归档时间: |
|
查看次数: |
61935 次 |
最近记录: |