请看以下数据:
who code info
1 1467 1
1 1468 2
1 1469 3
3 1467 5
3 1468 4
3 1469 7我需要做的是选择没有重复的代码: WHO=1,how to ignore WHO=3,但不要说: WHERE WHO=3 != 3,因为我需要这样做:
GROUP BY code实际上我得到了这样的结果:
1 1468 2
3 1467 5
3 1469 7我想要的是:
1 1467 1
1 1468 2
1 1469 3发布于 2012-02-25 11:15:13
只需将who添加到组中,然后使用WHERE过滤掉id3。
SELECT who, code, info FROM data WHERE who != 3 GROUP BY who, code注意,如果您从这个查询中选择了像info这样的值而没有按它分组,MySQL将给出该组中任何一行的值(不能保证只有在使用MySQL的情况下才会有1的值;大多数数据库引擎甚至不允许您构造这样的查询!)。因此,您可能需要的是所有这三个:
SELECT who, code, info FROM data WHERE who != 3 GROUP BY who, code, infohttps://stackoverflow.com/questions/9440845
复制相似问题