我想根据自定义提交的帖子列表。
这里我有9个不同的3个位置(中间,顶部,底部)
Post ID title position
1 Post1 Top
2 Post2 Bottom
3 Post3 Top
4 Post4 Bottom
5 Post5 Middle
6 Post6 Bottom
7 Post7 Top
8 Post8 Bottom
9 Post9 Top
10 Post10 Middle
现在我希望像这个订单一样发帖
5 Post5 Middle
2 Post2 Bottom
1 Post1 Top
10 Post10 Middle
4 Post4 Bottom
3 Post3 Top
6 Post6 Bottom
7 Post7 Top
8 Post8 Bottom
9 Post9 Top
所以首先是中间,底部,顶部,所以我想要像这个,中间,底部和顶部的邮购。我不希望完全中间位置然后是底部然后顶部。
我想列出获得中,下,上的前3个帖子。我需要这个列表wordpress,任何人都可以知道,我该怎么做这个任务
由于 CSR
答案 0 :(得分:1)
您可以使用如下查询:
SELECT PostID, title, position
FROM (
SELECT PostID, title, position,
@grp := IF(@pos = position, @grp + 1,
IF(@pos := position, 1, 1)) AS grp
FROM mytable
CROSS JOIN (SELECT @grp := 0, @pos := '') AS vars
ORDER BY position, title) AS t
ORDER BY grp, FIELD(position, 'Middle', 'Bottom', 'Top')