Podría crear un SQL externo donde la cláusula from sea una especie de tabla temporal como esta:
SELECT food_name from (
SELECT foodName
FROM food
WHERE foodCategory_id = 1 OR 2
ORDER BY RAND() limit 1) a
UNION
SELECT food_name from (
SELECT foodName
FROM food
WHERE foodCategory_id = 7 OR 8 OR 9
ORDER BY RAND() limit 1) b
UNION
SELECT food_name from (
SELECT foodName
FROM food
WHERE foodCategory_id = 10 OR 11
ORDER BY RAND() limit 1) c