Mysql 按类型获取最新的x帖子

Mysql 按类型获取最新的x帖子,mysql,Mysql,我有一个帖子表,我将每个帖子的类型保存在一个字段中。假设我有两种类型——类型1和类型2。我需要从该表中检索最新的x个帖子,其中x/2帖子来自type1,另一半来自type2。使用一个mysql查询怎么可能呢?好的,您的表如下所示: post_text post_type post_date --------- --------- --------- Hello World 1 2011-06-21 Foo Bar 2

我有一个帖子表,我将每个帖子的类型保存在一个字段中。假设我有两种类型——类型1和类型2。我需要从该表中检索最新的x个帖子,其中x/2帖子来自type1,另一半来自type2。使用一个mysql查询怎么可能呢?

好的,您的表如下所示:

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

我不知道你是个程序员,休!