MYSQL从两行中随机选择
有人能帮我解答这个问题吗。 我有这个表格作为样本: 文件表MYSQL从两行中随机选择,mysql,select,random,Mysql,Select,Random,有人能帮我解答这个问题吗。 我有这个表格作为样本: 文件表 液体 文件 上传日期为 浏览次数 我想考虑的是前30个最近上传的文件和强> 30个最被查看的文件,然后从它们随机选择< /强>和限制10个/强> < /P> 我是mysql复杂查询的新手。一个示例查询将是很好的,我将能够理解它。 谢谢 哦,天哪,完全一样的答案!!感谢vulkanino和xdazz的回复,非常接近时间回答非常棒。哦,天哪,完全相同的答案!!感谢vulkanino和xdazz的回复,《非常接近的时间》回答得非常棒。or
- 液体
- 文件
- 上传日期为
- 浏览次数
谢谢 哦,天哪,完全一样的答案!!感谢vulkanino和xdazz的回复,非常接近时间回答非常棒。哦,天哪,完全相同的答案!!感谢vulkanino和xdazz的回复,《非常接近的时间》回答得非常棒。
orderbyrand()
当行数开始增长时,类型解决方案将非常缓慢,只需谷歌搜索orderbyrand slow
。当然,当从2*30行中选择时,您不会注意到这一点。ORDER BY RAND()
当行数开始增长时,类型解决方案将非常缓慢,只需在谷歌上搜索ORDER BY RAND slow
。当然,在选择2*30行时,您不会注意到这一点。感谢回复vulkanino和xdazz,非常接近时间回答非常棒。感谢回复vulkanino和xdazz,非常接近时间回答非常棒。
select * from (
select * from table order by upload_on_date desc limit 30
union
select * from table order by view_count desc limit 30) t
order by rand() limit 10
SELECT
*
FROM
(
SELECT
*
FROM
tablefile
ORDER BY
uploaded_on_date DESC
LIMIT 30
UNION SELECT
*
FROM
tablefile
ORDER BY
view_count DESC
LIMIT 30
)
ORDER BY
RAND()
LIMIT 10;