Я хочу создать запрос SQL, который собирает результаты нескольких запросов.
Я хотел бы применить случайный порядок сортировки и вернуть ограниченное количество записей.
Все запросы будут возвращать одно и то же поле (в этом примере "RefCode
"), но будут иметь разные операторы FROM и WHERE.
См. Пример ниже некоторых возможных запросов:
SELECT PD.RefCode
FROM ((PD
INNER JOIN P ON PD.PrdFK = P.PrdID)
INNER JOIN PR ON PR.ChildCatFK = P.ChildCatFK)
WHERE PR.ParentCatFK = 6
SELECT PD.RefCode
FROM (PR
INNER JOIN PD ON PR.PrdDetFK = PD.PrdDetID)
WHERE PR.ChildCatFK = 14
Я пытался сделать это, используя различные методы (т. Е. UNION
), но не смог найти правильный метод.
Произвольная сортировка и ограничение записей (с использованием RAND()
и LIMIT 0,10
) не обязательны, но было бы здорово иметь.
Возможно ли это или мне нужно создавать каждый запрос отдельно?