$stmt = $db->query("SELECT * FROM posts where pos in ('slider', 'right', 'below') limit " . $limit . " offset " . $offset);
这为我提供了pos
为slider
或right
或below
且有限制和偏移参数的帖子。
我需要的是:
- 选择pos
= slider
或right
的所有帖子 - 不limit
和offset
- 加上 - pos
= below
的帖子 - 使用limit
和offset
参数。
可以使用两次$stmt
来完成,但我需要加入两个选项,一次处理所有选定的帖子。
更新
我试过了:
$stmt = $db->query("SELECT * FROM posts where pos in ('slider', 'right')
UNION
(SELECT * FROM posts where pos = 'below' limit 8");
语法错误。
任何帮助?
答案 0 :(得分:1)
Union会为您工作,因为两个查询都会返回相同的数据集,然后您可以立即处理所有结果。
$sql = "
(select all posts with pos = slider or right - without limit and offset)
UNION
(select all posts with pos = below - using limit and offset params)
;";