分组仅按某些值显示一个字段

时间:2014-03-13 01:04:17

标签: php mysql

我有一个新闻源数据库。有一个字段名称告诉我它来自哪个部分,名为" newsfeedSection"。我目前抓住了30个最新的记录来显示。某些新闻源被合并,例如"你本周已经发布了5张新照片。"。该声明将结合5张关于照片的不同新闻源记录。问题是如果有人发布了30张照片,该页面只会显示一个帖子(因为它会将照片合并到一个帖子中)。即使页面结合了帖子,我仍然可以显示30个新闻源。

字段newsfeedSection具有以下值:

100 - Profile updates
200 - Photo upload
300 - Image upload
400 - Status updates

现在只有200和300组合在一起。无论如何使用一个SQL语句来执行此操作? 我尝试过GROUP BY和DISTINCT,但没有成功。

任何帮助都会很棒。谢谢!

编辑1:

我尝试过的一些SQL语句是:

SELECT newsfeedID, newsfeedSection FROM newsfeed GROUP BY newsfeedSection ORDER BY newsfeedID DESC LIMIT 0, 30

SELECT newsfeedID, DISTINCT newsfeedSection FROM newsfeed ORDER BY newsfeedID DESC LIMIT 0, 30

我遇到的问题是它还将不应被分组的部分分组,例如100和400.

编辑2:

示例数据:

newsfeedID    newsfeedSection
1             100
2             100
3             200
4             200
5             300
6             300
7             400
8             400
9             400

只应将200和300组合在一起。让我们说我想要最新的6个帖子。我想要:

9             400
8             400
7             400
6             300
4             200
2             100

但是,当我尝试GROUP BY或DISINCT时,它会将它们全部分组,例如

9             400
6             300
4             200
2             100

这可以通过一个查询获得第一个结果吗?

0 个答案:

没有答案