我有一张这样的表
id userid cc cop
1 23 0.5 0.9
2 23 0.5 0.9
3 29 2.6 9.4
4 75 4.8 8.9
5 29 2.6 9.4
6 45 6.7 9.0
我想要所有的角色,使得cc和警察是截然不同的。结果应该是 像这样的东西
id userid cc cop
1 23 0.5 0.9
3 29 2.6 9.4
4 75 4.8 8.9
6 45 6.7 9.0
我想要任何具有cc,cop,userid的行,只需要选择一个 伪代码:从表中选择*,其中userid,cc,cop与结果不同。
答案 0 :(得分:2)
这将返回所需的结果,无论记录是如何保存在表格上的。
SELECT MIN(ID) ID, userid, cc, cop
FROM tableName
GROUP BY userid, cc, cop
其他来源
答案 1 :(得分:2)
也许你可以尝试这样的事情
SELECT MIN(id), userid, cc, cop
FROM table
GROUP BY userid, cc, cop;
它将选择每个出现的第一个id。
答案 2 :(得分:1)
您将需要使用使用GROUP BY子句的select语句。
SELECT *
FROM Table
GROUP BY userid
它们显示为单独的条目,因为每行至少有一个不同的列(在本例中为id)。您可以通过使用上面的语句或省略SELECT语句中的“id”列来避免这种情况,例如:
SELECT userid, cc, cop
FROM Table
如果您选择没有上述id列的数据,那么数据将自动分组,因为会有完全重复的行。
希望这有帮助。
答案 3 :(得分:0)
使用分组
尝试此查询select * from mytable group by userid , cc , cop