使用灵活的搜索查询选择随机行

时间:2019-01-11 05:34:30

标签: mysql sql groovy hybris flexible-search

我正在尝试创建一个灵活搜索,以从3M中检索10,000个随机行。 尝试使用诸如LIMIT之类的不同语法,但我无法使其正常工作,我需要将此查询添加到Groovy脚本中。考虑创建一个随机数并从所有行中检索10k,但是性能会很沉重。

有什么建议吗?

查询示例:

SELECT {pk} FROM {Order as O} "Condition to get random registries from it".

谢谢!

2 个答案:

答案 0 :(得分:0)

使用弹性搜索无法直接做到这一点。

一种解决方案是查询订单的ID,然后使用Java从列表中获取随机ID(您可以在StackOverflow上轻松找到该操作的方法)。

拥有随机ID后,您可以构建其他灵活搜索来查询完整行。

答案 1 :(得分:0)

SELECT {o.PK} FROM {Order as o} ORDER BY RAND()

请注意RAND()函数是特定于数据库引擎的。