我有一个MySQL表,其中包含一个名为"priority"的列.该列可以有两个值:高或低.我想从表中随机选择8条记录,但我希望其中6条是高优先级,其中2条是低优先级.如果可能的话,我想在一个SQL语句中做到这一点.有没有办法在一个查询中根据这种标准做两个LIMITS?
SELECT t1.*
FROM table t1
WHERE priority = 'high'
ORDER BY rand() Limit 8
UNION ALL
SELECT t1.*
FROM table t1
WHERE priority = 'low'
ORDER BY rand() Limit 2
Run Code Online (Sandbox Code Playgroud)