日期:2014-05-16  浏览次数:20767 次

group by 在没有MIN,MAX或SUM之类的情况下为什么会省略掉很多结果?
table_keyword_content

| keyword_id | content_id |
+------------+------------+
| 1 | 1 |
| 2 | 1067 |
| 3 | 1068 |
| 3 | 1069 |
| 3 | 1070 |
| 3 | 1071 |
| 3 | 1072 |

如果我select * from table_keyword_content group by keyword_id的话,结果就是

| keyword_id | content_id |
+------------+------------+
| 1 | 1 |
| 2 | 1067 |
| 3 | 1068 |

可我只是group by ,为什么会有这种结果?不是应该按分组都列出来吗?

------解决方案--------------------
group by keyword_id是按keyword_id分组查询,keyword_id相同的只取第1条。