Mysql 按类型获取最新的x帖子
我有一个帖子表,我将每个帖子的类型保存在一个字段中。假设我有两种类型——类型1和类型2。我需要从该表中检索最新的x个帖子,其中x/2帖子来自type1,另一半来自type2。使用一个mysql查询怎么可能呢?好的,您的表如下所示: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
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
我不知道你是个程序员,休!