1
想,我有这样的一个表:GROUP BY在MySQL查询
+---------+------------------+
| post_id | original_post_id |
+---------+------------------+
| 1 | 0 |
| 2 | 0 |
| 3 | 0 |
| 4 | 2 |
| 5 | 2 |
| 6 | 0 |
| 7 | 1 |
| 8 | 1 |
| 9 | 1 |
| 10 | 0 |
| 11 | 0 |
| 12 | 3 |
+---------+------------------+
简单地说,在这个表我包含用户的帖子,我想展示一些东西像一个时间表。所有的记录,其中original_post_id=0
- 是原始帖子,无论如何都必须显示。但所有的记录original_post_id!=0
- 都是转贴的,所以我只想给他们看一次。所以,作为一个结果,我需要的是这样的:
+---------+------------------+
| post_id | original_post_id |
+---------+------------------+
| 1 | 0 |
| 2 | 0 |
| 3 | 0 |
| 4 | 2 |
| 6 | 0 |
| 7 | 1 |
| 10 | 0 |
| 11 | 0 |
| 12 | 3 |
+---------+------------------+
据我了解,我必须使用GROUP BY
,但究竟如何?
真棒!就是这样! –