Итак, у меня есть карусель изображений в стиле Cover-Flow, заполненная запросом типа
SELECT foo FROM `imageTable` ORDER BY RAND() LIMIT 0, 12;
Мой клиент хотел бы добавить к этому набор постоянных изображений.Из-за способа использования результатов было бы очень удобно, если бы я мог сделать эти записи частью моего исходного запроса.
Я пытался
SELECT foo FROM `imageTable` WHERE `id` = 'x' OR `id` = 'y'
OR `id` IS NOT NULL ORDER BY RAND() LIMIT 0, 12;
Я надеялся, что записи с идентификаторамиобязательно будет в результирующем наборе, но нет, RAND () тасует весь набор.
Поэтому мой вопрос заключается в том, может ли какой-либо один запрос предоставить x постоянных записей, а затем y случайных записей?
// РЕДАКТИРОВАТЬ С ПЕРЕСМОТРЕННЫМ ЗАПРОСОМ, ИСПОЛЬЗУЯ ответ Адриана Серафина:
(SELECT * FROM `imageTable` ORDER BY RAND() LIMIT 0, 6)
UNION
(SELECT * FROM `imageTable` WHERE `id` = 'foo' OR `id` = 'bar' OR `id` = 'baz')