gpt4 book ai didi

hibernate - GORM 数据库中的随机对象

转载 作者:行者123 更新时间:2023-12-04 15:13:57 25 4
gpt4 key购买 nike

我想只使用 GORM 从数据库中获取一个随机对象,而不使用数据库特定的代码。

目前我正在使用这个:

Tag.executeQuery("from Tag order by rand()", [max: Tag.count()])

但我对此并不满意,因为我使用的是 mysql 的 rand() 函数。有些人建议获取所有ID,然后随机选择一个,然后查询整个对象,但我不想要两个查询。

有 GORM 方法可以做到这一点吗?如果不是纯 GORM,那么 Hibernate 解决方案可能会起作用。

(我在这里看到了这个问题 Grails GORM to return random rows from table? ,但它没有帮助:))

最佳答案

可以先得到一个随机偏移量,把max:1然后使用这些分页参数执行您的查询! (注意:你必须先在你的 table 上做一个 count() 但这不是一个非常昂贵的操作。)

关于hibernate - GORM 数据库中的随机对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12343468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com