【发布时间】:2021-01-18 07:55:25
【问题描述】:
假设我有一个简单的数据库,只有一个表,并且没有引用自身的外键。 MYSQL 或 MongoDB 在随机选择记录方面会更好吗? (假设有 100 万条记录。)
我收集了我将使用的 SQL:
SELECT col1, col2 FROM table WHERE col3 = x ORDER BY RAND() LIMIT n
对于 MongoDB,我会使用:
collection.aggregate([
{$match:{col3:{$eq: x}}},
{$sample:{size:n}}
])
任何人对随着记录数量的增长而对此类查询的性能有实际经验?
当然,如果没有“WHERE”条件,我会保持一个连续的 INT id 并随机抽取一个数字。
【问题讨论】: