您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

HIVE中的LIMIT条款真的是随机的吗?

HIVE中的LIMIT条款真的是随机的吗?

即使文档指出它随机返回行,但实际上并非如此。

它返回“随机选择的行”,因为它出现在数据库中而没有任何where / order by子句。这意味着它并不是真正的随机(或随机选择),只是无法确定返回行的顺序。

一旦在上面拍了order by x DESC limit 5一下,它就会返回您从中选择的内容的最后5行。

要使行随机返回,您需要使用类似以下内容代码order by rand() LIMIT 1

但是,如果索引设置不正确,可能会对速度产生影响。通常,我做一个最小/最大来获取表上的ID,然后在它们之间做一个随机数,然后选择那些记录(在您的情况下,将是1条记录),这往往比数据库要快。工作,尤其是在大型数据集上

其他 2022/1/1 18:44:21 有436人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶