按类型获取最新的x帖子

时间:2011-06-24 17:11:39

标签: mysql

我有一个表格用于帖子,我在一个字段中保存每个帖子的类型。可以说我有两种类型 - “type1”和“type2”。我需要从该表中检索最新的x帖子,其中x / 2帖子来自“type1”而另一半来自“type2”。如何使用一个mysql查询?

1 个答案:

答案 0 :(得分:0)

好的,你的桌子是这样的:

post_text    post_type    post_date
---------    ---------    ---------
Hello World  1            2011-06-21
Foo Bar      2            2011-06-22
Fizz Buzz    2            2011-06-23
lol hai      1            2011-06-24

你想检索一些(x)个帖子,其中一半是1型,另一半是2型?

一种可能的解决方案是:

(SELECT post_text
FROM mytable
WHERE post_type = 1
ORDER BY post_date DESC
LIMIT 1)
UNION
(SELECT post_text
FROM mytable
WHERE post_type = 2
ORDER BY post_date DESC
LIMIT 1);

当然,限量应该是所需数量X的一半。

返回:

post_text    post_type    post_date
---------    ---------    ---------
lol hai      1            2011-06-24
Fizz Buzz    2            2011-06-23